[INFO] fetching crate r2api 5.9.0...
[INFO] testing r2api-5.9.0 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate r2api 5.9.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate r2api 5.9.0
[INFO] finished tweaking crates.io crate r2api 5.9.0
[INFO] tweaked toml for crates.io crate r2api 5.9.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate r2api 5.9.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate r2api 5.9.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded either v1.11.0
[INFO] [stderr]   Downloaded clang-sys v1.7.0
[INFO] [stderr]   Downloaded proc-macro2 v1.0.82
[INFO] [stderr]   Downloaded syn v2.0.61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca
[INFO] running `Command { std: "docker" "start" "edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "edcd358e11bc4e43751dad7964ff28c4935be9c5d455562774cf9e5c670fbaca" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.82
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling prettyplease v0.2.20
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling either v1.11.0
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling linux-raw-sys v0.4.13
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling bindgen v0.69.4
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling libloading v0.8.3
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling clang-sys v1.7.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling syn v2.0.61
[INFO] [stderr]    Compiling regex v1.7.1
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling r2api v5.9.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/release/build/r2api-6fc4daf31c9295c9/out/bindings.rs:3:32154
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...:: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set_...
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unnecessary_transmutes)]` on by default
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[INFO] [stdout] 3 - # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub type __uint64_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 ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type pid_t = __pid_t ; pub type time_t = __time_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { const UNINIT : :: std :: mem :: MaybeUninit < __sigset_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sigset_t) , "::" , stringify ! (__val))) ; } pub type sigset_t = __sigset_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct timeval { pub tv_sec : __time_t , pub tv_usec : __suseconds_t , } # [test] fn bindgen_test_layout_timeval () { const UNINIT : :: std :: mem :: MaybeUninit < timeval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timeval > () , 16usize , concat ! ("Size of: " , stringify ! (timeval))) ; assert_eq ! (:: std :: mem :: align_of :: < timeval > () , 8usize , concat ! ("Alignment of " , stringify ! (timeval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timeval) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_usec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timeval) , "::" , stringify ! (tv_usec))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union __atomic_wide_counter { pub __value64 : :: std :: os :: raw :: c_ulonglong , pub __value32 : __atomic_wide_counter__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct __atomic_wide_counter__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___atomic_wide_counter__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __atomic_wide_counter__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __atomic_wide_counter__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (__atomic_wide_counter__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __atomic_wide_counter__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__atomic_wide_counter__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter__bindgen_ty_1) , "::" , stringify ! (__low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __high) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter__bindgen_ty_1) , "::" , stringify ! (__high))) ; } # [test] fn bindgen_test_layout___atomic_wide_counter () { const UNINIT : :: std :: mem :: MaybeUninit < __atomic_wide_counter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __atomic_wide_counter > () , 8usize , concat ! ("Size of: " , stringify ! (__atomic_wide_counter))) ; assert_eq ! (:: std :: mem :: align_of :: < __atomic_wide_counter > () , 8usize , concat ! ("Alignment of " , stringify ! (__atomic_wide_counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value64) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter) , "::" , stringify ! (__value64))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter) , "::" , stringify ! (__value32))) ; } impl Default for __atomic_wide_counter { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_list { pub __prev : * mut __pthread_internal_list , pub __next : * mut __pthread_internal_list , } # [test] fn bindgen_test_layout___pthread_internal_list () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_list > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __prev) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_list) , "::" , stringify ! (__prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_list) , "::" , stringify ! (__next))) ; } impl Default for __pthread_internal_list { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_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 __unused : :: std :: os :: raw :: c_short , pub __list : __pthread_list_t , } # [test] fn bindgen_test_layout___pthread_mutex_s () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_mutex_s > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __lock) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __owner) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__owner))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __nusers) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__nusers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __spins) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__spins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__unused))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __list) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__list))) ; } impl Default for __pthread_mutex_s { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __wseq : __atomic_wide_counter , pub __g1_start : __atomic_wide_counter , 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] , pub __unused_initialized_1 : :: std :: os :: raw :: c_uint , pub __unused_initialized_2 : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_cond_s () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_cond_s > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __wseq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__wseq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g1_start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g1_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g1_orig_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g1_orig_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrefs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__wrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g_signals) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g_signals))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused_initialized_1) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__unused_initialized_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused_initialized_2) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__unused_initialized_2))) ; } impl Default for __pthread_cond_s { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [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 , } # [test] fn bindgen_test_layout_pthread_mutex_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutex_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutex_t > () , 40usize , concat ! ("Size of: " , stringify ! (pthread_mutex_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutex_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_mutex_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__align))) ; } impl Default for pthread_mutex_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_cond_t { pub __data : __pthread_cond_s , pub __size : [:: std :: os :: raw :: c_char ; 48usize] , pub __align : :: std :: os :: raw :: c_longlong , } # [test] fn bindgen_test_layout_pthread_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_cond_t > () , 48usize , concat ! ("Size of: " , stringify ! (pthread_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__align))) ; } impl Default for pthread_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut80 { pub Low : u64 , pub High : u16 , } # [test] fn bindgen_test_layout__ut80 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut80 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut80 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut80))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut80 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut80))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut80) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut80) , "::" , stringify ! (High))) ; } pub type ut80 = _ut80 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut96 { pub Low : u64 , pub High : u32 , } # [test] fn bindgen_test_layout__ut96 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut96 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut96 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut96))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut96 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut96))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut96) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut96) , "::" , stringify ! (High))) ; } pub type ut96 = _ut96 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut128 { pub Low : u64 , pub High : i64 , } # [test] fn bindgen_test_layout__ut128 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut128 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut128 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut128))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut128 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut128))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut128) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut128) , "::" , stringify ! (High))) ; } pub type ut128 = _ut128 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut256 { pub Low : ut128 , pub High : ut128 , } # [test] fn bindgen_test_layout__ut256 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut256 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut256 > () , 32usize , concat ! ("Size of: " , stringify ! (_ut256))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut256 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut256))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut256) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_ut256) , "::" , stringify ! (High))) ; } pub type ut256 = _ut256 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _utX { pub v80 : ut80 , pub v96 : ut96 , pub v128 : ut128 , pub v256 : ut256 , } # [test] fn bindgen_test_layout__utX () { const UNINIT : :: std :: mem :: MaybeUninit < _utX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _utX > () , 80usize , concat ! ("Size of: " , stringify ! (_utX))) ; assert_eq ! (:: std :: mem :: align_of :: < _utX > () , 8usize , concat ! ("Alignment of " , stringify ! (_utX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v80) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v80))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v96) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v96))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v128) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v128))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v256) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v256))) ; } pub type utX = _utX ; pub type RSysBits = u64 ; pub type wchar_t = :: std :: os :: raw :: c_int ; pub type __gnuc_va_list = __builtin_va_list ; 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 _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , 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 _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } # [test] fn bindgen_test_layout__IO_FILE () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_FILE > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . _flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_ptr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_base) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_base) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_end) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_buf_base) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_buf_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_buf_end) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_buf_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_save_base) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_save_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_backup_base) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_backup_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_save_end) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_save_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _markers) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_markers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chain) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_chain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _fileno) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_fileno))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _short_backupbuf) as usize - ptr as usize } , 119usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_short_backupbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _old_offset) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_old_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _cur_column) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_cur_column))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _vtable_offset) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_vtable_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _shortbuf) as usize - ptr as usize } , 131usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_shortbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _lock) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _offset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _codecvt) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_codecvt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _wide_data) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_wide_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _freeres_list) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_freeres_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _freeres_buf) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_freeres_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _prevchain) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_prevchain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _mode) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _unused3) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_unused3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _total_written) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_total_written))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _unused2) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_unused2))) ; } impl Default for _IO_FILE { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { :: std :: mem :: transmute (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub type va_list = __gnuc_va_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __dirstream { _unused : [u8 ; 0] , } pub type DIR = __dirstream ; pub type PrintfCallback = :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn sdb_strdup (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } pub type SdbListFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; pub type SdbListComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ls_iter_t { pub data : * mut :: std :: os :: raw :: c_void , pub n : * mut ls_iter_t , pub p : * mut ls_iter_t , } # [test] fn bindgen_test_layout_ls_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < ls_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ls_iter_t > () , 24usize , concat ! ("Size of: " , stringify ! (ls_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < ls_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (ls_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (p))) ; } impl Default for ls_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbListIter = ls_iter_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ls_t { pub length : usize , pub head : * mut SdbListIter , pub tail : * mut SdbListIter , pub free : SdbListFree , pub cmp : SdbListComparator , pub sorted : bool , } # [test] fn bindgen_test_layout_ls_t () { const UNINIT : :: std :: mem :: MaybeUninit < ls_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ls_t > () , 48usize , concat ! ("Size of: " , stringify ! (ls_t))) ; assert_eq ! (:: std :: mem :: align_of :: < ls_t > () , 8usize , concat ! ("Alignment of " , stringify ! (ls_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tail) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (sorted))) ; } impl Default for ls_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbList = ls_t ; pub type SdbHeapRealloc = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , ptr : * mut :: std :: os :: raw :: c_void , size : usize) -> * mut :: std :: os :: raw :: c_void > ; pub type SdbHeapFini = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_global_heap_t { pub realloc : SdbHeapRealloc , pub fini : SdbHeapFini , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_sdb_global_heap_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_global_heap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_global_heap_t > () , 24usize , concat ! ("Size of: " , stringify ! (sdb_global_heap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_global_heap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_global_heap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realloc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (realloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (data))) ; } impl Default for sdb_global_heap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbGlobalHeap = sdb_global_heap_t ; extern "C" { pub fn sdb_gh () -> * mut SdbGlobalHeap ; } # [doc = " keyvalue pair"] # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct sdb_kv { pub base : [u64 ; 3usize] , pub cas : u32 , pub expire : u64 , } # [test] fn bindgen_test_layout_sdb_kv () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_kv > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_kv > () , 40usize , concat ! ("Size of: " , stringify ! (sdb_kv))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_kv > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_kv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cas) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (cas))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expire) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (expire))) ; } # [doc = " keyvalue pair"] pub type SdbKv = sdb_kv ; extern "C" { pub fn sdb_ht_new () -> * mut [u64 ; 11usize] ; } extern "C" { pub fn sdb_ht_free (ht : * mut [u64 ; 11usize]) ; } extern "C" { pub fn sdb_ht_insert (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_insert_kvp (ht : * mut [u64 ; 11usize] , kvp : * mut SdbKv , update : bool) -> bool ; } extern "C" { pub fn sdb_ht_update (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_delete (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_find (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , found : * mut bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_ht_find_kvp (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , found : * mut bool) -> * mut SdbKv ; } pub type dict_freecb = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dict { pub table : * mut * mut :: std :: os :: raw :: c_void , pub f : dict_freecb , pub size : u32 , } # [test] fn bindgen_test_layout_dict () { const UNINIT : :: std :: mem :: MaybeUninit < dict > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dict > () , 24usize , concat ! ("Size of: " , stringify ! (dict))) ; assert_eq ! (:: std :: mem :: align_of :: < dict > () , 8usize , concat ! ("Alignment of " , stringify ! (dict))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (size))) ; } impl Default for dict { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbMini = dict ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb { pub map : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub size : u32 , pub loop_ : u32 , pub khash : u32 , pub kpos : u32 , pub hpos : u32 , pub hslots : u32 , pub dpos : u32 , pub dlen : u32 , } # [test] fn bindgen_test_layout_cdb () { const UNINIT : :: std :: mem :: MaybeUninit < cdb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb > () , 48usize , concat ! ("Size of: " , stringify ! (cdb))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loop_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (loop_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . khash) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (khash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kpos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (kpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpos) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (hpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hslots) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (hslots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dpos) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (dpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dlen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (dlen))) ; } impl Default for cdb { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type BufferOp = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int , arg2 : * const :: std :: os :: raw :: c_char , arg3 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct buffer { pub x : * mut :: std :: os :: raw :: c_char , pub p : :: std :: os :: raw :: c_uint , pub n : :: std :: os :: raw :: c_uint , pub fd : :: std :: os :: raw :: c_int , pub op : BufferOp , } # [test] fn bindgen_test_layout_buffer () { const UNINIT : :: std :: mem :: MaybeUninit < buffer > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < buffer > () , 32usize , concat ! ("Size of: " , stringify ! (buffer))) ; assert_eq ! (:: std :: mem :: align_of :: < buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (op))) ; } impl Default for buffer { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct cdb_hp { pub h : u32 , pub p : u32 , } # [test] fn bindgen_test_layout_cdb_hp () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_hp > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_hp > () , 8usize , concat ! ("Size of: " , stringify ! (cdb_hp))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_hp > () , 4usize , concat ! ("Alignment of " , stringify ! (cdb_hp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_hp) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cdb_hp) , "::" , stringify ! (p))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb_hplist { pub hp : [cdb_hp ; 1000usize] , pub next : * mut cdb_hplist , pub num : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_cdb_hplist () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_hplist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_hplist > () , 8016usize , concat ! ("Size of: " , stringify ! (cdb_hplist))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_hplist > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb_hplist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hp) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (hp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 8000usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 8008usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (num))) ; } impl Default for cdb_hplist { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb_make { pub bspace : [:: std :: os :: raw :: c_char ; 8192usize] , pub final_ : [:: std :: os :: raw :: c_char ; 1024usize] , pub count : [u32 ; 256usize] , pub start : [u32 ; 256usize] , pub head : * mut cdb_hplist , pub split : * mut cdb_hp , pub hash : * mut cdb_hp , pub numentries : u32 , pub memsize : u32 , pub b : buffer , pub pos : u32 , pub fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_cdb_make () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_make > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_make > () , 11336usize , concat ! ("Size of: " , stringify ! (cdb_make))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_make > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb_make))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bspace) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (bspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . final_) as usize - ptr as usize } , 8192usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (final_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 9216usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 10240usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 11264usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . split) as usize - ptr as usize } , 11272usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (split))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 11280usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numentries) as usize - ptr as usize } , 11288usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (numentries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memsize) as usize - ptr as usize } , 11292usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (memsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 11296usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 11328usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 11332usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (fd))) ; } impl Default for cdb_make { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type GperfForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_gperf_t { pub name : * const :: std :: os :: raw :: c_char , pub get : :: std :: option :: Option < unsafe extern "C" fn (k : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char > , pub hash : :: std :: option :: Option < unsafe extern "C" fn (k : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_uint > , pub foreach : :: std :: option :: Option < unsafe extern "C" fn (cb : GperfForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool > , } # [test] fn bindgen_test_layout_sdb_gperf_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_gperf_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_gperf_t > () , 32usize , concat ! ("Size of: " , stringify ! (sdb_gperf_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_gperf_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_gperf_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foreach) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (foreach))) ; } impl Default for sdb_gperf_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbGperf = sdb_gperf_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_t { pub dir : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub name : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub refs : :: std :: os :: raw :: c_int , pub lock : :: std :: os :: raw :: c_int , pub journal : :: std :: os :: raw :: c_int , pub db : cdb , pub m : cdb_make , pub ht : * mut [u64 ; 11usize] , pub eod : u32 , pub pos : u32 , pub gp : * mut SdbGperf , pub fdump : :: std :: os :: raw :: c_int , pub ndump : * mut :: std :: os :: raw :: c_char , pub expire : u64 , pub last : u64 , pub options : :: std :: os :: raw :: c_int , pub ns_lock : :: std :: os :: raw :: c_int , pub ns : * mut SdbList , pub hooks : * mut SdbList , pub tmpkv : SdbKv , pub depth : u32 , pub timestamped : bool , pub mht : SdbMini , } # [test] fn bindgen_test_layout_sdb_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_t > () , 11576usize , concat ! ("Size of: " , stringify ! (sdb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (refs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . journal) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (journal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . m) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (m))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 11424usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eod) as usize - ptr as usize } , 11432usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (eod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 11436usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 11440usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdump) as usize - ptr as usize } , 11448usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (fdump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndump) as usize - ptr as usize } , 11456usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ndump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expire) as usize - ptr as usize } , 11464usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (expire))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 11472usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 11480usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns_lock) as usize - ptr as usize } , 11484usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ns_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns) as usize - ptr as usize } , 11488usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hooks) as usize - ptr as usize } , 11496usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (hooks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmpkv) as usize - ptr as usize } , 11504usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (tmpkv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 11544usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timestamped) as usize - ptr as usize } , 11548usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (timestamped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mht) as usize - ptr as usize } , 11552usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (mht))) ; } impl Default for sdb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type Sdb = sdb_t ; extern "C" { pub fn sdb_new0 () -> * mut Sdb ; } extern "C" { pub fn sdb_new (path : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char , lock : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_open (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_open_gperf (s : * mut Sdb , g : * mut SdbGperf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_close (s : * mut Sdb) ; } extern "C" { pub fn sdb_config (s : * mut Sdb , options : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_free (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_file (s : * mut Sdb , dir : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_merge (d : * mut Sdb , s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_count (s : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_reset (s : * mut Sdb) ; } extern "C" { pub fn sdb_setup (s : * mut Sdb , options : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_drain (arg1 : * mut Sdb , arg2 : * mut Sdb) ; } extern "C" { pub fn sdb_copy (src : * mut Sdb , dst : * mut Sdb) ; } extern "C" { pub fn sdb_stats (s : * mut Sdb , disk : * mut u32 , mem : * mut u32) -> bool ; } extern "C" { pub fn sdb_dump_hasnext (s : * mut Sdb) -> bool ; } pub type SdbForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool > ; extern "C" { pub fn sdb_foreach (s : * mut Sdb , cb : SdbForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_foreach_list (s : * mut Sdb , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_foreach_list_filter (s : * mut Sdb , filter : SdbForeachCallback , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_foreach_match (s : * mut Sdb , expr : * const :: std :: os :: raw :: c_char , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_main (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_query (s : * mut Sdb , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_queryf (s : * mut Sdb , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_query_lines (s : * mut Sdb , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_querys (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , len : usize , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_querysf (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , buflen : usize , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_query_file (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_exists (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_remove (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_unset (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nunset (arg1 : * mut Sdb , nkey : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_unset_like (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_like (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char , cb : SdbForeachCallback) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_cgen_header (cname : * const :: std :: os :: raw :: c_char , textmode : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_cgen_footer (name : * const :: std :: os :: raw :: c_char , cname : * const :: std :: os :: raw :: c_char , textmode : bool) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_diff_t { pub path : * const SdbList , pub k : * const :: std :: os :: raw :: c_char , pub v : * const :: std :: os :: raw :: c_char , pub add : bool , } # [test] fn bindgen_test_layout_sdb_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_diff_t > () , 32usize , concat ! ("Size of: " , stringify ! (sdb_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . k) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (k))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . add) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (add))) ; } impl Default for sdb_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbDiff = sdb_diff_t ; extern "C" { pub fn sdb_diff_format (str_ : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , diff : * const SdbDiff) -> :: std :: os :: raw :: c_int ; } pub type SdbDiffCallback = :: std :: option :: Option < unsafe extern "C" fn (diff : * const SdbDiff , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn sdb_diff (a : * mut Sdb , b : * mut Sdb , cb : SdbDiffCallback , cb_user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_get (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_nget (arg1 : * mut Sdb , nkey : u64 , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_get_len (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , vlen : * mut :: std :: os :: raw :: c_int , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_get (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_get_len (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , vlen : * mut :: std :: os :: raw :: c_int , cas : * mut u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_set (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nset (arg1 : * mut Sdb , nkey : u64 , data : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_nget (s : * mut Sdb , nkey : u64 , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_num_nset (s : * mut Sdb , nkey : u64 , nval : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_set_owned (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * mut :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_concat (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_uncat (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nadd (s : * mut Sdb , nkey : u64 , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_sync (arg1 : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_num_exists (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_num_base (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_num_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_inc (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : u64 , cas : u32) -> u64 ; } extern "C" { pub fn sdb_num_dec (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : u64 , cas : u32) -> u64 ; } extern "C" { pub fn sdb_num_min (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_max (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ptr_set (db : * mut Sdb , key : * const :: std :: os :: raw :: c_char , p : * mut :: std :: os :: raw :: c_void , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ptr_get (db : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn sdb_disk_create (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_disk_insert (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_disk_finish (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_disk_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_text_save_fd (s : * mut Sdb , fd : :: std :: os :: raw :: c_int , sort : bool) -> bool ; } extern "C" { pub fn sdb_text_save (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char , sort : bool) -> bool ; } extern "C" { pub fn sdb_text_load_buf (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , sz : usize) -> bool ; } extern "C" { pub fn sdb_text_load (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_text_check (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_dump_begin (s : * mut Sdb) ; } extern "C" { pub fn sdb_dump_next (s : * mut Sdb) -> * mut SdbKv ; } extern "C" { pub fn sdb_dump_dupnext (s : * mut Sdb , key : * mut :: std :: os :: raw :: c_char , value : * mut * mut :: std :: os :: raw :: c_char , _vlen : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn sdb_journal_close (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_open (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_load (s : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_journal_log (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_journal_clear (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_itoa (n : u64 , base : :: std :: os :: raw :: c_int , s : * mut :: std :: os :: raw :: c_char , slen : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_itoas (n : u64 , base : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_atoi (s : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn sdb_lock (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_lock_file (f : * const :: std :: os :: raw :: c_char , buf : * mut :: std :: os :: raw :: c_char , buf_size : usize) -> bool ; } extern "C" { pub fn sdb_unlock (s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_lock_wait (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_expire_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , expire : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_expire_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_now () -> u64 ; } extern "C" { pub fn sdb_unow () -> u64 ; } extern "C" { pub fn sdb_hash_byte (s : * const :: std :: os :: raw :: c_char) -> u8 ; } extern "C" { pub fn sdb_js0n (js : * const :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_uint , out : * mut :: std :: os :: raw :: c_uint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_isjson (k : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_json_get_str (json : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_get_bool (json : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_json_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_set (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_json_num_get (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_set (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , v : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_dec (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_inc (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_indent (s : * const :: std :: os :: raw :: c_char , tab : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_unindent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SdbJsonString { pub buf : * mut :: std :: os :: raw :: c_char , pub blen : usize , pub len : usize , } # [test] fn bindgen_test_layout_SdbJsonString () { const UNINIT : :: std :: mem :: MaybeUninit < SdbJsonString > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SdbJsonString > () , 24usize , concat ! ("Size of: " , stringify ! (SdbJsonString))) ; assert_eq ! (:: std :: mem :: align_of :: < SdbJsonString > () , 8usize , concat ! ("Alignment of " , stringify ! (SdbJsonString))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (blen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (len))) ; } impl Default for SdbJsonString { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn sdb_json_format (s : * mut SdbJsonString , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_ns (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , create : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_ns_path (s : * mut Sdb , path : * const :: std :: os :: raw :: c_char , create : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_ns_init (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_free (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_lock (s : * mut Sdb , lock : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_ns_sync (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_set (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , r : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ns_unset (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , r : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_array_contains (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_array_contains_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_array_indexof (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_set_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_append (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_append_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_prepend (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_prepend_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_get_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_array_get_idx (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_insert (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_insert_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_unset (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_delete (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_sort (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) ; } extern "C" { pub fn sdb_array_sort_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) ; } extern "C" { pub fn sdb_array_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_sorted (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_sorted_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_remove (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_remove_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_anext (str_ : * mut :: std :: os :: raw :: c_char , next : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_anext (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_alen (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_alen_ignore_empty (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_size (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_length (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_list (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_push (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_pop (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_push_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , num : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_pop_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_array_pop_head (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_pop_tail (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } pub type SdbHook = :: std :: option :: Option < unsafe extern "C" fn (s : * mut Sdb , user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) > ; extern "C" { pub fn sdb_hook (s : * mut Sdb , cb : SdbHook , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_unhook (s : * mut Sdb , h : SdbHook) -> bool ; } extern "C" { pub fn sdb_hook_call (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_hook_free (s : * mut Sdb) ; } extern "C" { pub fn sdb_isnum (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_isempty (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_type (k : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_match (str_ : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_bool_set (db : * mut Sdb , str_ : * const :: std :: os :: raw :: c_char , v : bool , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_bool_get (db : * mut Sdb , str_ : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_decode (in_ : * const :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn sdb_encode (bin : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_encode_raw (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_decode_raw (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_init (p : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_free (p : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_fmt_tobin (_str : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , stru : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_tostr (stru : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_fmt_array (list : * const :: std :: os :: raw :: c_char) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_fmt_array_num (list : * const :: std :: os :: raw :: c_char) -> * mut u64 ; } extern "C" { pub fn sdb_tool (path : * const :: std :: os :: raw :: c_char , mirror_mode : bool) -> bool ; } extern "C" { pub fn sdb_array_compact (p : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_aslice (out : * mut :: std :: os :: raw :: c_char , from : :: std :: os :: raw :: c_int , to : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RListFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_iter_t { pub data : * mut :: std :: os :: raw :: c_void , pub n : * mut r_list_iter_t , pub p : * mut r_list_iter_t , } # [test] fn bindgen_test_layout_r_list_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_iter_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_list_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (p))) ; } impl Default for r_list_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RListIter = r_list_iter_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_t { pub head : * mut RListIter , pub tail : * mut RListIter , pub free : RListFree , pub length : :: std :: os :: raw :: c_int , pub sorted : bool , } # [test] fn bindgen_test_layout_r_list_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_list_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tail) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (sorted))) ; } impl Default for r_list_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RList = r_list_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_range_t { pub h : * mut [u64 ; 11usize] , pub l : * mut RList , } # [test] fn bindgen_test_layout_r_list_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_range_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_list_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_range_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_range_t) , "::" , stringify ! (l))) ; } impl Default for r_list_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RListRange = r_list_range_t ; pub type RListComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RListComparatorItem = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void) -> u64 > ; extern "C" { pub fn r_list_new () -> * mut RList ; } extern "C" { pub fn r_list_newf (f : RListFree) -> * mut RList ; } extern "C" { pub fn r_list_iter_get_next (list : * mut RListIter) -> * mut RListIter ; } extern "C" { pub fn r_list_iter_get_prev (list : * mut RListIter) -> * mut RListIter ; } extern "C" { pub fn r_list_set_n (list : * mut RList , n : :: std :: os :: raw :: c_int , p : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_get_data (list : * mut RListIter) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_append (list : * mut RList , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_prepend (list : * mut RList , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_insert (list : * mut RList , n : u32 , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_length (list : * const RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_length (iter : * mut RListIter) -> usize ; } extern "C" { pub fn r_list_first (list : * const RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_last (list : * const RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_add_sorted (list : * mut RList , data : * mut :: std :: os :: raw :: c_void , cmp : RListComparator) -> * mut RListIter ; } extern "C" { pub fn r_list_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_merge_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_insertion_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_uniq (list : * const RList , cmp : RListComparatorItem) -> * mut RList ; } extern "C" { pub fn r_list_uniq_inplace (list : * mut RList , cmp : RListComparatorItem) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_init (list : * mut RList) ; } extern "C" { pub fn r_list_delete (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_delete_data (list : * mut RList , ptr : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_list_iter_init (iter : * mut RListIter , list : * mut RList) ; } extern "C" { pub fn r_list_purge (list : * mut RList) ; } extern "C" { pub fn r_list_free (list : * mut RList) ; } extern "C" { pub fn r_list_item_new (data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_split (list : * mut RList , ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_list_split_iter (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_join (list1 : * mut RList , list2 : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_get_n (list : * const RList , n : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_get_nth (list : * const RList , n : :: std :: os :: raw :: c_int) -> * mut RListIter ; } extern "C" { pub fn r_list_del_n (list : * mut RList , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_to_top (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_pop (list : * mut RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_pop_head (list : * mut RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_reverse (list : * mut RList) ; } pub type RListClone = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; extern "C" { pub fn r_list_clone (list : * const RList , clone : RListClone) -> * mut RList ; } extern "C" { pub fn r_list_to_str (list : * mut RList , ch : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_list_contains (list : * const RList , p : * const :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_find (list : * const RList , p : * const :: std :: os :: raw :: c_void , cmp : RListComparator) -> * mut RListIter ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_regex_t { pub re_magic : :: std :: os :: raw :: c_int , pub re_nsub : usize , pub re_endp : * const :: std :: os :: raw :: c_char , pub re_g : * mut re_guts , pub re_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_regex_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_regex_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_regex_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_regex_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_regex_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_regex_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_magic) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_magic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_nsub) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_nsub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_endp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_endp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_g) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_g))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_flags) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_flags))) ; } impl Default for r_regex_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegex = r_regex_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_regmatch_t { pub rm_so : i64 , pub rm_eo : i64 , } # [test] fn bindgen_test_layout_r_regmatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_regmatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_regmatch_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_regmatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_regmatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_regmatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm_so) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_regmatch_t) , "::" , stringify ! (rm_so))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm_eo) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_regmatch_t) , "::" , stringify ! (rm_eo))) ; } pub type RRegexMatch = r_regmatch_t ; extern "C" { pub fn r_regex_run (pattern : * const :: std :: os :: raw :: c_char , flags : * const :: std :: os :: raw :: c_char , text : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_match (pattern : * const :: std :: os :: raw :: c_char , flags : * const :: std :: os :: raw :: c_char , text : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_regex_flags (flags : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_new (pattern : * const :: std :: os :: raw :: c_char , cflags : * const :: std :: os :: raw :: c_char) -> * mut RRegex ; } extern "C" { pub fn r_regex_free (arg1 : * mut RRegex) ; } extern "C" { pub fn r_regex_init (arg1 : * mut RRegex , pattern : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_fini (arg1 : * mut RRegex) ; } extern "C" { pub fn r_regex_check (rr : * const RRegex , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_regex_exec (preg : * const RRegex , string : * const :: std :: os :: raw :: c_char , nmatch : usize , __pmatch : * mut RRegexMatch , eflags : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_match_list (rx : * mut RRegex , text : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_regex_error (rx : * mut RRegex , errcode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_skiplist_node_t { pub data : * mut :: std :: os :: raw :: c_void , pub forward : * mut * mut r_skiplist_node_t , } # [test] fn bindgen_test_layout_r_skiplist_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_skiplist_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_skiplist_node_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_skiplist_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_skiplist_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_skiplist_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_node_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forward) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_node_t) , "::" , stringify ! (forward))) ; } impl Default for r_skiplist_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSkipListNode = r_skiplist_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_skiplist_t { pub head : * mut RSkipListNode , pub list_level : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub freefn : RListFree , pub compare : RListComparator , } # [test] fn bindgen_test_layout_r_skiplist_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_skiplist_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_skiplist_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_skiplist_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_skiplist_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_skiplist_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (list_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . freefn) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (freefn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . compare) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (compare))) ; } impl Default for r_skiplist_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSkipList = r_skiplist_t ; extern "C" { pub fn r_skiplist_new (freefn : RListFree , comparefn : RListComparator) -> * mut RSkipList ; } extern "C" { pub fn r_skiplist_free (list : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_purge (list : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_insert (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_insert_autofree (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_skiplist_delete (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_skiplist_delete_node (list : * mut RSkipList , node : * mut RSkipListNode) -> bool ; } extern "C" { pub fn r_skiplist_find (list : * const RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_find_geq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_find_leq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_join (l1 : * mut RSkipList , l2 : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_get_first (list : * mut RSkipList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_n (list : * mut RSkipList , n : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_geq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_leq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_empty (list : * mut RSkipList) -> bool ; } extern "C" { pub fn r_skiplist_to_list (list : * mut RSkipList) -> * mut RList ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RSysInfo { pub sysname : * mut :: std :: os :: raw :: c_char , pub nodename : * mut :: std :: os :: raw :: c_char , pub release : * mut :: std :: os :: raw :: c_char , pub version : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RSysInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RSysInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RSysInfo > () , 40usize , concat ! ("Size of: " , stringify ! (RSysInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RSysInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RSysInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (sysname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (nodename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . release) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (machine))) ; } impl Default for RSysInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_sys_info () -> * mut RSysInfo ; } extern "C" { pub fn r_sys_info_free (si : * mut RSysInfo) ; } extern "C" { pub fn r_sys_sigaction (sig : * mut :: std :: os :: raw :: c_int , handler : :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_signal (sig : :: std :: os :: raw :: c_int , handler : :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_signable (v : bool) ; } extern "C" { pub fn r_sys_env_init () ; } extern "C" { pub fn r_sys_get_environ () -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_set_environ (e : * mut * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sys_fork () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_exit (status : :: std :: os :: raw :: c_int , nocleanup : bool) ; } extern "C" { pub fn r_sys_stop () -> bool ; } extern "C" { pub fn r_sys_pid_to_path (pid : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_run (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_run_rop (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getpid () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_crash_handler (cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_arch_str (arch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_arch_id (arch : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_arch_match (archstr : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_dir (path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_sys_perror_str (fun : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sys_tem (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_prefix (pfx : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_mktemp (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_mkdir (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_mkdirp (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_sleep (secs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_usleep (usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getenv (key : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_getenv_asbool (key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_getenv_asint (key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getenv_asut64 (key : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_sys_setenv (key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv_sep (key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , prefix : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv2 (key : * const :: std :: os :: raw :: c_char , value : * const u8 , len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv_asbool (key : * const :: std :: os :: raw :: c_char , v : bool) ; } extern "C" { pub fn r_sys_setenv_asut64 (key : * const :: std :: os :: raw :: c_char , n : u64) ; } extern "C" { pub fn r_sys_clearenv () -> bool ; } extern "C" { pub fn r_sys_whoami () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_uid () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getdir () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_chdir (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_aslr (val : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sys_thp_mode () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd_str_full (cmd : * const :: std :: os :: raw :: c_char , input : * const :: std :: os :: raw :: c_char , ilen : :: std :: os :: raw :: c_int , output : * mut * mut :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int , sterr : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_truncate (file : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd (cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmdbg (cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmdf (fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd_str (cmd : * const :: std :: os :: raw :: c_char , input : * const :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_cmd_strf (cmd : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_backtrace () ; } extern "C" { pub fn r_sys_tts (txt : * const :: std :: os :: raw :: c_char , bg : bool) -> bool ; } extern "C" { pub fn r_syscmd_ls (input : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_cat (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_pushd (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_popd () -> bool ; } extern "C" { pub fn r_syscmd_popalld () -> bool ; } extern "C" { pub fn r_syscmd_mkdir (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_mktemp (dir : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_mv (input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_uniq (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_head (file : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_tail (file : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_join (file1 : * const :: std :: os :: raw :: c_char , file2 : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_sort (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_unxz (data : * const u8 , len : usize , olen : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_w32_init () -> bool ; } # [repr (C)] # [derive (Copy , Clone)] pub union sem_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_sem_t () { const UNINIT : :: std :: mem :: MaybeUninit < sem_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sem_t > () , 32usize , concat ! ("Size of: " , stringify ! (sem_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sem_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sem_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sem_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sem_t) , "::" , stringify ! (__align))) ; } impl Default for sem_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tm { pub tm_sec : :: std :: os :: raw :: c_int , pub tm_min : :: std :: os :: raw :: c_int , pub tm_hour : :: std :: os :: raw :: c_int , pub tm_mday : :: std :: os :: raw :: c_int , pub tm_mon : :: std :: os :: raw :: c_int , pub tm_year : :: std :: os :: raw :: c_int , pub tm_wday : :: std :: os :: raw :: c_int , pub tm_yday : :: std :: os :: raw :: c_int , pub tm_isdst : :: std :: os :: raw :: c_int , pub tm_gmtoff : :: std :: os :: raw :: c_long , pub tm_zone : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_tm () { const UNINIT : :: std :: mem :: MaybeUninit < tm > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tm > () , 56usize , concat ! ("Size of: " , stringify ! (tm))) ; assert_eq ! (:: std :: mem :: align_of :: < tm > () , 8usize , concat ! ("Alignment of " , stringify ! (tm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_min) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_hour) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_hour))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_mday) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_mday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_mon) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_mon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_year) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_year))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_wday) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_wday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_yday) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_yday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_isdst) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_isdst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_gmtoff) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_gmtoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_zone) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_zone))) ; } impl Default for tm { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RThreadFunctionRet_R_TH_FREED : RThreadFunctionRet = - 1 ; pub const RThreadFunctionRet_R_TH_STOP : RThreadFunctionRet = 0 ; pub const RThreadFunctionRet_R_TH_REPEAT : RThreadFunctionRet = 1 ; pub const RThreadFunctionRet_R_TH_PAUSE : RThreadFunctionRet = 2 ; pub type RThreadFunctionRet = :: std :: os :: raw :: c_int ; pub type RThreadFunction = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_th_t) -> RThreadFunctionRet > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_th_sem_t { pub sem : * mut sem_t , } # [test] fn bindgen_test_layout_r_th_sem_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_sem_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_sem_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_th_sem_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_sem_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_sem_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_sem_t) , "::" , stringify ! (sem))) ; } impl Default for r_th_sem_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadSemaphore = r_th_sem_t ; pub const r_th_lock_type_t_R_TH_LOCK_TYPE_STATIC : r_th_lock_type_t = 0 ; pub const r_th_lock_type_t_R_TH_LOCK_TYPE_HEAP : r_th_lock_type_t = 1 ; pub type r_th_lock_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_th_lock_type_t as RThreadLockType ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_th_lock_t { pub activating : :: std :: os :: raw :: c_int , pub active : bool , pub type_ : RThreadLockType , pub lock : pthread_mutex_t , } # [test] fn bindgen_test_layout_r_th_lock_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_lock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_lock_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_th_lock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_lock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_lock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . activating) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (activating))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . active) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (lock))) ; } impl Default for r_th_lock_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadLock = r_th_lock_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_th_cond_t { pub cond : pthread_cond_t , } # [test] fn bindgen_test_layout_r_th_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_cond_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_th_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_cond_t) , "::" , stringify ! (cond))) ; } impl Default for r_th_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadCond = r_th_cond_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_th_t { pub tid : pthread_t , pub lock : * mut RThreadLock , pub fun : RThreadFunction , pub user : * mut :: std :: os :: raw :: c_void , pub running : bool , pub breaked : :: std :: os :: raw :: c_int , pub delay : u32 , pub ready : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_th_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_th_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fun) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breaked) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (ready))) ; } impl Default for r_th_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThread = r_th_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannel { pub nextid : :: std :: os :: raw :: c_int , pub lock : * mut RThreadLock , pub sem : * mut RThreadSemaphore , pub stack : * mut RList , pub responses : * mut RList , pub consumer : * mut RThread , } # [test] fn bindgen_test_layout_RThreadChannel () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannel > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannel > () , 48usize , concat ! ("Size of: " , stringify ! (RThreadChannel))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannel > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (nextid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (sem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . responses) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (responses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consumer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (consumer))) ; } impl Default for RThreadChannel { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannelMessage { pub id : :: std :: os :: raw :: c_int , pub msg : * mut u8 , pub len : :: std :: os :: raw :: c_int , pub lock : * mut RThreadLock , pub sem : * mut RThreadSemaphore , } # [test] fn bindgen_test_layout_RThreadChannelMessage () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannelMessage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannelMessage > () , 40usize , concat ! ("Size of: " , stringify ! (RThreadChannelMessage))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannelMessage > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannelMessage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (msg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (sem))) ; } impl Default for RThreadChannelMessage { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannelPromise { pub id : :: std :: os :: raw :: c_int , pub message : * mut RThreadChannelMessage , pub tc : * mut RThreadChannel , } # [test] fn bindgen_test_layout_RThreadChannelPromise () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannelPromise > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannelPromise > () , 24usize , concat ! ("Size of: " , stringify ! (RThreadChannelPromise))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannelPromise > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannelPromise))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . message) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (message))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (tc))) ; } impl Default for RThreadChannelPromise { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_th_channel_read (tc : * mut RThreadChannel) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_free (cm : * mut RThreadChannelMessage) ; } extern "C" { pub fn r_th_channel_write (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_read (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_new (tc : * mut RThreadChannel , msg : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_new (consumer : RThreadFunction , user : * mut :: std :: os :: raw :: c_void) -> * mut RThreadChannel ; } extern "C" { pub fn r_th_channel_free (tc : * mut RThreadChannel) ; } extern "C" { pub fn r_th_channel_query (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelPromise ; } extern "C" { pub fn r_th_channel_post (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) ; } extern "C" { pub fn r_th_channel_promise_new (tc : * mut RThreadChannel) -> * mut RThreadChannelPromise ; } extern "C" { pub fn r_th_channel_promise_wait (promise : * mut RThreadChannelPromise) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_promise_free (cp : * mut RThreadChannelPromise) ; } extern "C" { pub fn r_th_new (fun : RThreadFunction , user : * mut :: std :: os :: raw :: c_void , delay : u32) -> * mut RThread ; } extern "C" { pub fn r_th_start (th : * mut RThread) -> bool ; } extern "C" { pub fn r_th_wait (th : * mut RThread) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_th_wait_async (th : * mut RThread) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_th_break (th : * mut RThread) ; } extern "C" { pub fn r_th_free (th : * mut RThread) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_set_running (th : * mut RThread , b : bool) ; } extern "C" { pub fn r_th_is_running (th : * mut RThread) -> bool ; } extern "C" { pub fn r_th_kill_free (th : * mut RThread) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_kill (th : * mut RThread , force : bool) -> bool ; } extern "C" { pub fn r_th_self () -> pthread_t ; } extern "C" { pub fn r_th_setname (th : * mut RThread , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_th_getname (th : * mut RThread , name : * mut :: std :: os :: raw :: c_char , len : usize) -> bool ; } extern "C" { pub fn r_th_setaffinity (th : * mut RThread , cpuid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_th_sem_new (initial : :: std :: os :: raw :: c_uint) -> * mut RThreadSemaphore ; } extern "C" { pub fn r_th_sem_free (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_sem_post (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_sem_wait (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_lock_new (recursive : bool) -> * mut RThreadLock ; } extern "C" { pub fn r_th_lock_wait (th : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_tryenter (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_enter (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_leave (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_free (thl : * mut RThreadLock) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_cond_new () -> * mut RThreadCond ; } extern "C" { pub fn r_th_cond_signal (cond : * mut RThreadCond) ; } extern "C" { pub fn r_th_cond_signal_all (cond : * mut RThreadCond) ; } extern "C" { pub fn r_th_cond_wait (cond : * mut RThreadCond , lock : * mut RThreadLock) ; } extern "C" { pub fn r_th_cond_free (cond : * mut RThreadCond) ; } extern "C" { pub fn r_atomic_store (data : * mut :: std :: os :: raw :: c_int , v : bool) ; } extern "C" { pub fn r_atomic_exchange (data : * mut :: std :: os :: raw :: c_int , v : bool) -> bool ; } pub const r_log_level_R_LOG_LEVEL_FATAL : r_log_level = 0 ; pub const r_log_level_R_LOG_LEVEL_ERROR : r_log_level = 1 ; pub const r_log_level_R_LOG_LEVEL_INFO : r_log_level = 2 ; pub const r_log_level_R_LOG_LEVEL_WARN : r_log_level = 3 ; pub const r_log_level_R_LOG_LEVEL_TODO : r_log_level = 4 ; pub const r_log_level_R_LOG_LEVEL_DEBUG : r_log_level = 5 ; pub const r_log_level_R_LOG_LEVEL_TRACE : r_log_level = 6 ; pub const r_log_level_R_LOG_LEVEL_LAST : r_log_level = 7 ; pub type r_log_level = :: std :: os :: raw :: c_uint ; pub use self :: r_log_level as RLogLevel ; pub type RLogCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , type_ : :: std :: os :: raw :: c_int , origin : * const :: std :: os :: raw :: c_char , msg : * const :: std :: os :: raw :: c_char) -> bool > ; extern "C" { pub fn r_log_init () -> bool ; } extern "C" { pub fn r_log_fini () ; } extern "C" { pub fn r_log_match (level : :: std :: os :: raw :: c_int , origin : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_log_message (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , func : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_log_vmessage (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , func : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) ; } extern "C" { pub fn r_log_add_callback (cb : RLogCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_log_del_callback (cb : RLogCallback) ; } extern "C" { pub fn r_log_set_file (expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_log_set_filter (expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_log_set_colors (show_colors : bool) ; } extern "C" { pub fn r_log_show_origin (show_origin : bool) ; } extern "C" { pub fn r_log_show_source (show_source : bool) ; } extern "C" { pub fn r_log_set_quiet (be_quiet : bool) ; } extern "C" { pub fn r_log_set_level (level : RLogLevel) ; } extern "C" { pub fn r_log_show_ts (ts : bool) ; } extern "C" { pub fn r_log_get_level () -> RLogLevel ; } extern "C" { pub fn r_log_get_traplevel () -> RLogLevel ; } extern "C" { pub fn r_log_set_traplevel (level : RLogLevel) ; } extern "C" { pub fn r_log_set_callback (cbfunc : RLogCallback) ; } extern "C" { pub fn r_log_level_tostring (i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_log_level_fromstring (arg1 : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_log_level_tocolor (i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_log (funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : u32 , level : RLogLevel , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_vlog (funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : u32 , level : RLogLevel , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , args : * mut __va_list_tag) ; } extern "C" { pub fn r_assert_log (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) ; } pub type REvent = r_event_t ; pub type REventCallback = :: std :: option :: Option < unsafe extern "C" fn (ev : * mut REvent , type_ : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_event_hook_t { pub event_type : u32 , pub cb : REventCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_event_hook_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_event_hook_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_event_hook_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_event_hook_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_event_hook_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_event_hook_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_type) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (event_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (user))) ; } impl Default for r_event_hook_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REventHook = r_event_hook_t ; pub type RVecREventHook = r_vec_RVecREventHook_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_event_t { pub user : * mut :: std :: os :: raw :: c_void , pub __bindgen_padding_0 : u64 , pub all_events : RVecREventHook , pub known_events : [RVecREventHook ; 124usize] , pub other_events : * mut [u64 ; 11usize] , pub lock : * mut RThreadLock , } # [test] fn bindgen_test_layout_r_event_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_event_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_event_t > () , 4032usize , concat ! ("Size of: " , stringify ! (r_event_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_event_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_event_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . all_events) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (all_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . known_events) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (known_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other_events) as usize - ptr as usize } , 4016usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (other_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 4024usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (lock))) ; } impl Default for r_event_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_event_new (user : * mut :: std :: os :: raw :: c_void) -> * mut REvent ; } extern "C" { pub fn r_event_free (ev : * mut REvent) ; } extern "C" { pub fn r_event_hook (ev : * mut REvent , type_ : u32 , cb : REventCallback , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_event_unhook (ev : * mut REvent , event_hook : u32 , cb : REventCallback) -> bool ; } extern "C" { pub fn r_event_send (ev : * mut REvent , type_ : u32 , data : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug)] pub struct r_arena_block_t { pub next : * mut r_arena_block_t , pub used : usize , pub capacity : usize , pub data : __IncompleteArrayField < u8 > , } # [test] fn bindgen_test_layout_r_arena_block_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arena_block_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arena_block_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_arena_block_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arena_block_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arena_block_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (data))) ; } impl Default for r_arena_block_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArenaBlock = r_arena_block_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arena_t { pub current : * mut RArenaBlock , pub first : * mut RArenaBlock , pub block_size : usize , pub total_allocated : usize , pub default_alignment : usize , } # [test] fn bindgen_test_layout_r_arena_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arena_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arena_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_arena_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arena_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arena_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (block_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total_allocated) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (total_allocated))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_alignment) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (default_alignment))) ; } impl Default for r_arena_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArena = r_arena_t ; extern "C" { pub fn r_arena_create () -> * mut RArena ; } extern "C" { pub fn r_arena_create_with (block_size : usize) -> * mut RArena ; } extern "C" { pub fn r_arena_alloc (arena : * mut RArena , size : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_calloc (arena : * mut RArena , size : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_alloc_aligned (arena : * mut RArena , size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_calloc_aligned (arena : * mut RArena , size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_reset (arena : * mut RArena) ; } extern "C" { pub fn r_arena_destroy (arena : * mut RArena) ; } extern "C" { pub fn r_arena_push_str (arena : * mut RArena , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arena_push_strn (arena : * mut RArena , str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arena_push (arena : * mut RArena , mem : * const :: std :: os :: raw :: c_void , n : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_used (arena : * const RArena) -> usize ; } extern "C" { pub fn r_arena_capacity (arena : * const RArena) -> usize ; } extern "C" { pub fn r_arena_block_count (arena : * const RArena) -> usize ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_interval_t { pub addr : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_interval_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_interval_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_interval_t) , "::" , stringify ! (size))) ; } pub type RInterval = r_interval_t ; extern "C" { pub fn r_signal_from_string (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_signal_tostring (code : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_signal_to_human (signum : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_signal_sigmask (how : :: std :: os :: raw :: c_int , newmask : * const sigset_t , oldmask : * mut sigset_t) ; } extern "C" { pub fn r_malloc_aligned (size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_free_aligned (p : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_rb_node_t { pub parent : * mut r_rb_node_t , pub child : [* mut r_rb_node_t ; 2usize] , pub red : bool , } # [test] fn bindgen_test_layout_r_rb_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_rb_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_rb_node_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_rb_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_rb_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_rb_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . child) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . red) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (red))) ; } impl Default for r_rb_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBNode = r_rb_node_t ; pub type RBTree = * mut RBNode ; pub type RBComparator = :: std :: option :: Option < unsafe extern "C" fn (incoming : * const :: std :: os :: raw :: c_void , in_tree : * const RBNode , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RBNodeFree = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RBNode , user : * mut :: std :: os :: raw :: c_void) > ; pub type RBNodeSum = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RBNode) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_rb_iter_t { pub len : usize , pub path : [* mut RBNode ; 62usize] , } # [test] fn bindgen_test_layout_r_rb_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_rb_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_rb_iter_t > () , 504usize , concat ! ("Size of: " , stringify ! (r_rb_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_rb_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_rb_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_rb_iter_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_rb_iter_t) , "::" , stringify ! (path))) ; } impl Default for r_rb_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBIter = r_rb_iter_t ; extern "C" { pub fn r_rbtree_aug_delete (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , freefn : RBNodeFree , free_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_aug_insert (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_aug_update_sum (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_delete (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , freefn : RBNodeFree , free_user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_rbtree_find (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_free (root : * mut RBNode , freefn : RBNodeFree , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_rbtree_insert (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_rbtree_lower_bound (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_upper_bound (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_first (root : * mut RBNode) -> RBIter ; } extern "C" { pub fn r_rbtree_last (root : * mut RBNode) -> RBIter ; } extern "C" { pub fn r_rbtree_lower_bound_forward (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> RBIter ; } extern "C" { pub fn r_rbtree_upper_bound_backward (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> RBIter ; } extern "C" { pub fn r_rbtree_iter_next (it : * mut RBIter) ; } extern "C" { pub fn r_rbtree_iter_prev (it : * mut RBIter) ; } pub const RXmlRet_R_XML_EEOF : RXmlRet = - 5 ; pub const RXmlRet_R_XML_EREF : RXmlRet = - 4 ; pub const RXmlRet_R_XML_ECLOSE : RXmlRet = - 3 ; pub const RXmlRet_R_XML_ESTACK : RXmlRet = - 2 ; pub const RXmlRet_R_XML_ESYN : RXmlRet = - 1 ; pub const RXmlRet_R_XML_OK : RXmlRet = 0 ; pub const RXmlRet_R_XML_ELEMSTART : RXmlRet = 1 ; pub const RXmlRet_R_XML_CONTENT : RXmlRet = 2 ; pub const RXmlRet_R_XML_ELEMEND : RXmlRet = 3 ; pub const RXmlRet_R_XML_ATTRSTART : RXmlRet = 4 ; pub const RXmlRet_R_XML_ATTRVAL : RXmlRet = 5 ; pub const RXmlRet_R_XML_ATTREND : RXmlRet = 6 ; pub const RXmlRet_R_XML_PISTART : RXmlRet = 7 ; pub const RXmlRet_R_XML_PICONTENT : RXmlRet = 8 ; pub const RXmlRet_R_XML_PIEND : RXmlRet = 9 ; pub type RXmlRet = :: std :: os :: raw :: c_int ; pub const r_xml_state_t_R_XML_STATE_STRING : r_xml_state_t = 0 ; pub const r_xml_state_t_R_XML_STATE_ATTR0 : r_xml_state_t = 1 ; pub const r_xml_state_t_R_XML_STATE_ATTR1 : r_xml_state_t = 2 ; pub const r_xml_state_t_R_XML_STATE_ATTR2 : r_xml_state_t = 3 ; pub const r_xml_state_t_R_XML_STATE_ATTR3 : r_xml_state_t = 4 ; pub const r_xml_state_t_R_XML_STATE_ATTR4 : r_xml_state_t = 5 ; pub const r_xml_state_t_R_XML_STATE_CD0 : r_xml_state_t = 6 ; pub const r_xml_state_t_R_XML_STATE_CD1 : r_xml_state_t = 7 ; pub const r_xml_state_t_R_XML_STATE_CD2 : r_xml_state_t = 8 ; pub const r_xml_state_t_R_XML_STATE_COMMENT0 : r_xml_state_t = 9 ; pub const r_xml_state_t_R_XML_STATE_COMMENT1 : r_xml_state_t = 10 ; pub const r_xml_state_t_R_XML_STATE_COMMENT2 : r_xml_state_t = 11 ; pub const r_xml_state_t_R_XML_STATE_COMMENT3 : r_xml_state_t = 12 ; pub const r_xml_state_t_R_XML_STATE_COMMENT4 : r_xml_state_t = 13 ; pub const r_xml_state_t_R_XML_STATE_DT0 : r_xml_state_t = 14 ; pub const r_xml_state_t_R_XML_STATE_DT1 : r_xml_state_t = 15 ; pub const r_xml_state_t_R_XML_STATE_DT2 : r_xml_state_t = 16 ; pub const r_xml_state_t_R_XML_STATE_DT3 : r_xml_state_t = 17 ; pub const r_xml_state_t_R_XML_STATE_DT4 : r_xml_state_t = 18 ; pub const r_xml_state_t_R_XML_STATE_ELEM0 : r_xml_state_t = 19 ; pub const r_xml_state_t_R_XML_STATE_ELEM1 : r_xml_state_t = 20 ; pub const r_xml_state_t_R_XML_STATE_ELEM2 : r_xml_state_t = 21 ; pub const r_xml_state_t_R_XML_STATE_ELEM3 : r_xml_state_t = 22 ; pub const r_xml_state_t_R_XML_STATE_ENC0 : r_xml_state_t = 23 ; pub const r_xml_state_t_R_XML_STATE_ENC1 : r_xml_state_t = 24 ; pub const r_xml_state_t_R_XML_STATE_ENC2 : r_xml_state_t = 25 ; pub const r_xml_state_t_R_XML_STATE_ENC3 : r_xml_state_t = 26 ; pub const r_xml_state_t_R_XML_STATE_ETAG0 : r_xml_state_t = 27 ; pub const r_xml_state_t_R_XML_STATE_ETAG1 : r_xml_state_t = 28 ; pub const r_xml_state_t_R_XML_STATE_ETAG2 : r_xml_state_t = 29 ; pub const r_xml_state_t_R_XML_STATE_INIT : r_xml_state_t = 30 ; pub const r_xml_state_t_R_XML_STATE_le0 : r_xml_state_t = 31 ; pub const r_xml_state_t_R_XML_STATE_le1 : r_xml_state_t = 32 ; pub const r_xml_state_t_R_XML_STATE_le2 : r_xml_state_t = 33 ; pub const r_xml_state_t_R_XML_STATE_le3 : r_xml_state_t = 34 ; pub const r_xml_state_t_R_XML_STATE_LEE1 : r_xml_state_t = 35 ; pub const r_xml_state_t_R_XML_STATE_LEE2 : r_xml_state_t = 36 ; pub const r_xml_state_t_R_XML_STATE_LEQ0 : r_xml_state_t = 37 ; pub const r_xml_state_t_R_XML_STATE_MISC0 : r_xml_state_t = 38 ; pub const r_xml_state_t_R_XML_STATE_MISC1 : r_xml_state_t = 39 ; pub const r_xml_state_t_R_XML_STATE_MISC2 : r_xml_state_t = 40 ; pub const r_xml_state_t_R_XML_STATE_MISC2a : r_xml_state_t = 41 ; pub const r_xml_state_t_R_XML_STATE_MISC3 : r_xml_state_t = 42 ; pub const r_xml_state_t_R_XML_STATE_PI0 : r_xml_state_t = 43 ; pub const r_xml_state_t_R_XML_STATE_PI1 : r_xml_state_t = 44 ; pub const r_xml_state_t_R_XML_STATE_PI2 : r_xml_state_t = 45 ; pub const r_xml_state_t_R_XML_STATE_PI3 : r_xml_state_t = 46 ; pub const r_xml_state_t_R_XML_STATE_PI4 : r_xml_state_t = 47 ; pub const r_xml_state_t_R_XML_STATE_STD0 : r_xml_state_t = 48 ; pub const r_xml_state_t_R_XML_STATE_STD1 : r_xml_state_t = 49 ; pub const r_xml_state_t_R_XML_STATE_STD2 : r_xml_state_t = 50 ; pub const r_xml_state_t_R_XML_STATE_STD3 : r_xml_state_t = 51 ; pub const r_xml_state_t_R_XML_STATE_VER0 : r_xml_state_t = 52 ; pub const r_xml_state_t_R_XML_STATE_VER1 : r_xml_state_t = 53 ; pub const r_xml_state_t_R_XML_STATE_VER2 : r_xml_state_t = 54 ; pub const r_xml_state_t_R_XML_STATE_VER3 : r_xml_state_t = 55 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL0 : r_xml_state_t = 56 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL1 : r_xml_state_t = 57 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL2 : r_xml_state_t = 58 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL3 : r_xml_state_t = 59 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL4 : r_xml_state_t = 60 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL5 : r_xml_state_t = 61 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL6 : r_xml_state_t = 62 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL7 : r_xml_state_t = 63 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL8 : r_xml_state_t = 64 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL9 : r_xml_state_t = 65 ; pub type r_xml_state_t = :: std :: os :: raw :: c_uint ; pub use self :: r_xml_state_t as RXmlState ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_xml_t { pub elem : * mut :: std :: os :: raw :: c_char , pub data : [:: std :: os :: raw :: c_char ; 8usize] , pub attr : * mut :: std :: os :: raw :: c_char , pub pi : * mut :: std :: os :: raw :: c_char , pub byte : u64 , pub total : u64 , pub line : u32 , pub state : RXmlState , pub stack : * mut u8 , pub stacksize : usize , pub stacklen : usize , pub reflen : :: std :: os :: raw :: c_uint , pub quote : :: std :: os :: raw :: c_uint , pub nextstate : :: std :: os :: raw :: c_int , pub ignore : :: std :: os :: raw :: c_uint , pub string : * mut u8 , } # [test] fn bindgen_test_layout_r_xml_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_xml_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_xml_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_xml_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_xml_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_xml_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (elem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pi) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (pi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byte) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (total))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacksize) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stacksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacklen) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stacklen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflen) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (reflen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quote) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (quote))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextstate) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (nextstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (ignore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (string))) ; } impl Default for r_xml_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RXml = r_xml_t ; extern "C" { pub fn r_xml_init (arg1 : * mut RXml , arg2 : * mut :: std :: os :: raw :: c_void , arg3 : usize) ; } extern "C" { pub fn r_xml_parse (arg1 : * mut RXml , arg2 : :: std :: os :: raw :: c_int) -> RXmlRet ; } extern "C" { pub fn r_xml_new (stacksize : :: std :: os :: raw :: c_int) -> * mut RXml ; } extern "C" { pub fn r_xml_free (arg1 : * mut RXml) ; } extern "C" { pub fn r_xml_indent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xml_eof (arg1 : * mut RXml) -> RXmlRet ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_crbtree_node { pub link : [* mut r_crbtree_node ; 2usize] , pub parent : * mut r_crbtree_node , pub red : u32 , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_crbtree_node () { const UNINIT : :: std :: mem :: MaybeUninit < r_crbtree_node > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_crbtree_node > () , 40usize , concat ! ("Size of: " , stringify ! (r_crbtree_node))) ; assert_eq ! (:: std :: mem :: align_of :: < r_crbtree_node > () , 8usize , concat ! ("Alignment of " , stringify ! (r_crbtree_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . link) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . red) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (red))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (data))) ; } impl Default for r_crbtree_node { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRBNode = r_crbtree_node ; pub type RRBComparator = :: std :: option :: Option < unsafe extern "C" fn (incoming : * mut :: std :: os :: raw :: c_void , in_ : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RRBFree = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_crbtree_t { pub root : * mut RRBNode , pub size : usize , pub free : RRBFree , } # [test] fn bindgen_test_layout_r_crbtree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_crbtree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_crbtree_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_crbtree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_crbtree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_crbtree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (free))) ; } impl Default for r_crbtree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRBTree = r_crbtree_t ; extern "C" { pub fn r_crbtree_new (freefn : RRBFree) -> * mut RRBTree ; } extern "C" { pub fn r_crbtree_clear (tree : * mut RRBTree) ; } extern "C" { pub fn r_crbtree_free (tree : * mut RRBTree) ; } extern "C" { pub fn r_crbtree_find_node (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RRBNode ; } extern "C" { pub fn r_crbtree_find (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_crbtree_insert (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_crbtree_take (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_crbtree_delete (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_crbtree_first_node (tree : * mut RRBTree) -> * mut RRBNode ; } extern "C" { pub fn r_crbtree_last_node (tree : * mut RRBTree) -> * mut RRBNode ; } extern "C" { pub fn r_rbnode_next (node : * mut RRBNode) -> * mut RRBNode ; } extern "C" { pub fn r_rbnode_prev (node : * mut RRBNode) -> * mut RRBNode ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_interval_node_t { pub node : RBNode , pub start : u64 , pub end : u64 , pub max_end : u64 , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_interval_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_node_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_interval_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . node) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_end) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (max_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (data))) ; } impl Default for r_interval_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIntervalNode = r_interval_node_t ; pub type RIntervalNodeFree = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_interval_tree_t { pub root : * mut RIntervalNode , pub free : RIntervalNodeFree , } # [test] fn bindgen_test_layout_r_interval_tree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_tree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_tree_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_interval_tree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_tree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_tree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_tree_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_interval_tree_t) , "::" , stringify ! (free))) ; } impl Default for r_interval_tree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIntervalTree = r_interval_tree_t ; extern "C" { pub fn r_interval_tree_init (tree : * mut RIntervalTree , free : RIntervalNodeFree) ; } extern "C" { pub fn r_interval_tree_fini (tree : * mut RIntervalTree) ; } extern "C" { pub fn r_interval_tree_insert (tree : * mut RIntervalTree , start : u64 , end : u64 , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_delete (tree : * mut RIntervalTree , node : * mut RIntervalNode , free : bool) -> bool ; } extern "C" { pub fn r_interval_tree_resize (tree : * mut RIntervalTree , node : * mut RIntervalNode , new_start : u64 , new_end : u64) -> bool ; } extern "C" { pub fn r_interval_tree_first_at (tree : * mut RIntervalTree , start : u64) -> RBIter ; } extern "C" { pub fn r_interval_tree_node_at (tree : * mut RIntervalTree , start : u64) -> * mut RIntervalNode ; } extern "C" { pub fn r_interval_tree_node_at_data (tree : * mut RIntervalTree , start : u64 , data : * mut :: std :: os :: raw :: c_void) -> * mut RIntervalNode ; } pub type RIntervalIterCb = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RIntervalNode , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_interval_tree_all_at (tree : * mut RIntervalTree , start : u64 , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_all_in (tree : * mut RIntervalTree , value : u64 , end_inclusive : bool , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_all_intersect (tree : * mut RIntervalTree , start : u64 , end : u64 , end_inclusive : bool , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_big_t { pub array : [u32 ; 128usize] , pub sign : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_num_big_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_big_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_big_t > () , 516usize , concat ! ("Size of: " , stringify ! (r_num_big_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_big_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_num_big_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . array) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_big_t) , "::" , stringify ! (array))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_num_big_t) , "::" , stringify ! (sign))) ; } impl Default for r_num_big_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNumBig = r_num_big_t ; extern "C" { pub fn r_big_new () -> * mut RNumBig ; } extern "C" { pub fn r_big_free (b : * mut RNumBig) ; } extern "C" { pub fn r_big_init (b : * mut RNumBig) ; } extern "C" { pub fn r_big_fini (b : * mut RNumBig) ; } extern "C" { pub fn r_big_from_int (b : * mut RNumBig , v : i64) ; } extern "C" { pub fn r_big_to_int (b : * mut RNumBig) -> i64 ; } extern "C" { pub fn r_big_from_hexstr (b : * mut RNumBig , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_big_to_hexstr (b : * mut RNumBig) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_big_assign (dst : * mut RNumBig , src : * mut RNumBig) ; } extern "C" { pub fn r_big_add (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_sub (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_mul (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_div (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_mod (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_divmod (c : * mut RNumBig , d : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_and (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_or (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_xor (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_lshift (c : * mut RNumBig , a : * mut RNumBig , nbits : usize) ; } extern "C" { pub fn r_big_rshift (c : * mut RNumBig , a : * mut RNumBig , nbits : usize) ; } extern "C" { pub fn r_big_cmp (a : * mut RNumBig , b : * mut RNumBig) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_big_is_zero (a : * mut RNumBig) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_big_inc (a : * mut RNumBig) ; } extern "C" { pub fn r_big_dec (a : * mut RNumBig) ; } extern "C" { pub fn r_big_powm (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig , m : * mut RNumBig) ; } extern "C" { pub fn r_big_isqrt (c : * mut RNumBig , a : * mut RNumBig) ; } extern "C" { pub fn r_base32_encode (data : * const u8 , input_length : usize , output_length : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_base32_decode (data : * const :: std :: os :: raw :: c_char , input_length : usize , output_length : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_base64_encode (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base64_decode (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base64_decode_dyn (in_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , olen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_base64_encode_dyn (in_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_base91_encode (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base91_decode (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mmap_t { pub buf : * mut u8 , pub base : u64 , pub len : :: std :: os :: raw :: c_int , pub fd : :: std :: os :: raw :: c_int , pub rw : :: std :: os :: raw :: c_int , pub filename : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_mmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mmap_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_mmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rw) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (rw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (filename))) ; } impl Default for r_mmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMmap = r_mmap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mem_pool_t { pub nodes : * mut * mut u8 , pub ncount : :: std :: os :: raw :: c_int , pub npool : :: std :: os :: raw :: c_int , pub nodesize : :: std :: os :: raw :: c_int , pub poolsize : :: std :: os :: raw :: c_int , pub poolcount : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_mem_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mem_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mem_pool_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_mem_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mem_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mem_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ncount) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (ncount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . npool) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (npool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodesize) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (nodesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . poolsize) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (poolsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . poolcount) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (poolcount))) ; } impl Default for r_mem_pool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMemoryPool = r_mem_pool_t ; extern "C" { pub fn r_mem_get_num (b : * const u8 , size : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_mem_pool_deinit (pool : * mut RMemoryPool) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_new (nodesize : :: std :: os :: raw :: c_int , poolsize : :: std :: os :: raw :: c_int , poolcount : :: std :: os :: raw :: c_int) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_free (pool : * mut RMemoryPool) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_alloc (pool : * mut RMemoryPool) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_dup (s : * const :: std :: os :: raw :: c_void , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_set (ch : u8 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_alloc (sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_free (arg1 : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_mem_zero (arg1 : * mut :: std :: os :: raw :: c_void , arg2 : usize) ; } extern "C" { pub fn r_mem_reverse (b : * mut u8 , l : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_protect (ptr : * mut :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , prot : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_mem_set_num (dest : * mut u8 , dest_size : :: std :: os :: raw :: c_int , num : u64) -> bool ; } extern "C" { pub fn r_mem_eq (a : * mut u8 , b : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_copybits (dst : * mut u8 , src : * const u8 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_copybits_delta (dst : * mut u8 , doff : :: std :: os :: raw :: c_int , src : * const u8 , soff : :: std :: os :: raw :: c_int , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_copyloop (dest : * mut u8 , orig : * const u8 , dsize : :: std :: os :: raw :: c_int , osize : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_swaporcopy (dest : * mut u8 , src : * const u8 , len : :: std :: os :: raw :: c_int , big_endian : bool) ; } extern "C" { pub fn r_mem_swapendian (dest : * mut u8 , orig : * const u8 , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_swap (buf : * mut u8 , buf_len : usize) ; } extern "C" { pub fn r_mem_cmp_mask (dest : * const u8 , orig : * const u8 , mask : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_mem (haystack : * const u8 , hlen : :: std :: os :: raw :: c_int , needle : * const u8 , nlen : :: std :: os :: raw :: c_int) -> * const u8 ; } extern "C" { pub fn r_mem_mem_aligned (haystack : * const u8 , hlen : :: std :: os :: raw :: c_int , needle : * const u8 , nlen : :: std :: os :: raw :: c_int , align : :: std :: os :: raw :: c_int) -> * const u8 ; } extern "C" { pub fn r_mem_count (addr : * mut * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_is_printable (a : * const u8 , la : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_is_zero (b : * const u8 , l : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_from_binstring (str_ : * const :: std :: os :: raw :: c_char , buf : * mut u8 , len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_to_binstring (str_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RBuffer = r_buf_t ; pub type RBufferInit = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , user : * const :: std :: os :: raw :: c_void) -> bool > ; pub type RBufferFini = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> bool > ; pub type RBufferRead = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , buf : * mut u8 , len : u64) -> i64 > ; pub type RBufferWrite = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , buf : * const u8 , len : u64) -> i64 > ; pub type RBufferGetSize = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> u64 > ; pub type RBufferResize = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , newsize : u64) -> bool > ; pub type RBufferSeek = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , addr : i64 , whence : :: std :: os :: raw :: c_int) -> i64 > ; pub type RBufferGetWholeBuf = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , sz : * mut u64) -> * mut u8 > ; pub type RBufferFreeWholeBuf = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) > ; pub type RBufferNonEmptyList = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> * mut RList > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_buffer_methods_t { pub init : RBufferInit , pub fini : RBufferFini , pub read : RBufferRead , pub write : RBufferWrite , pub get_size : RBufferGetSize , pub resize : RBufferResize , pub seek : RBufferSeek , pub get_whole_buf : RBufferGetWholeBuf , pub free_whole_buf : RBufferFreeWholeBuf , pub nonempty_list : RBufferNonEmptyList , } # [test] fn bindgen_test_layout_r_buffer_methods_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buffer_methods_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buffer_methods_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_buffer_methods_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buffer_methods_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buffer_methods_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (get_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_whole_buf) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (get_whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_whole_buf) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (free_whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nonempty_list) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (nonempty_list))) ; } pub type RBufferMethods = r_buffer_methods_t ; pub const RBufferType_R_BUFFER_FILE : RBufferType = 0 ; pub const RBufferType_R_BUFFER_IO : RBufferType = 1 ; pub const RBufferType_R_BUFFER_BYTES : RBufferType = 2 ; pub const RBufferType_R_BUFFER_MMAP : RBufferType = 3 ; pub const RBufferType_R_BUFFER_SPARSE : RBufferType = 4 ; pub const RBufferType_R_BUFFER_REF : RBufferType = 5 ; pub const RBufferType_R_BUFFER_CACHE : RBufferType = 6 ; pub const RBufferType_R_BUFFER_COUNT : RBufferType = 7 ; pub type RBufferType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_buf_file_t { pub fd : :: std :: os :: raw :: c_int , pub tmp : [u8 ; 8usize] , } # [test] fn bindgen_test_layout_r_buf_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_file_t > () , 12usize , concat ! ("Size of: " , stringify ! (r_buf_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_file_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_buf_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_file_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_buf_file_t) , "::" , stringify ! (tmp))) ; } pub type RBufferFile = r_buf_file_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_io_t { pub iob : * mut r_io_bind_t , pub fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_buf_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_io_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_io_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_io_t) , "::" , stringify ! (fd))) ; } impl Default for r_buf_io_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferIO = r_buf_io_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_bytes_t { pub buf : * mut u8 , pub length : u64 , pub offset : u64 , pub is_bufowner : bool , } # [test] fn bindgen_test_layout_r_buf_bytes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_bytes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_bytes_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_buf_bytes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_bytes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_bytes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_bufowner) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (is_bufowner))) ; } impl Default for r_buf_bytes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferBytes = r_buf_bytes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_mmap_t { pub offset : u64 , pub mmap : * mut RMmap , } # [test] fn bindgen_test_layout_r_buf_mmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_mmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_mmap_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_mmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_mmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_mmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_mmap_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmap) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_mmap_t) , "::" , stringify ! (mmap))) ; } impl Default for r_buf_mmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferMmap = r_buf_mmap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_sparse_t { pub sparse : * mut RList , pub offset : u64 , } # [test] fn bindgen_test_layout_r_buf_sparse_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_sparse_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_sparse_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_sparse_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_sparse_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_sparse_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sparse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_sparse_t) , "::" , stringify ! (sparse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_sparse_t) , "::" , stringify ! (offset))) ; } impl Default for r_buf_sparse_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferSparse = r_buf_sparse_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_ref_t { pub parent : * mut RBuffer , pub cur : u64 , pub base : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_buf_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_ref_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_buf_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (size))) ; } impl Default for r_buf_ref_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferRef = r_buf_ref_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_cache_t { pub sb : * mut RBuffer , pub is_bufowner : bool , pub length : u64 , pub cl : * mut r_io_cache_layer_t , pub offset : u64 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_r_buf_cache_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_cache_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_cache_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_buf_cache_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_cache_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_cache_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_bufowner) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (is_bufowner))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cl) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (cl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (buf))) ; } impl Default for r_buf_cache_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferCache = r_buf_cache_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_buf_t { pub methods : * const RBufferMethods , pub __bindgen_anon_1 : r_buf_t__bindgen_ty_1 , pub whole_buf : * mut u8 , pub readonly : bool , pub Oxff_priv : u8 , pub refctr : :: std :: os :: raw :: c_int , pub type_ : RBufferType , } # [repr (C)] # [derive (Copy , Clone)] pub union r_buf_t__bindgen_ty_1 { pub rb_file : * mut RBufferFile , pub rb_io : * mut RBufferIO , pub rb_bytes : * mut RBufferBytes , pub rb_mmap : * mut RBufferMmap , pub rb_sparse : * mut RBufferSparse , pub rb_ref : * mut RBufferRef , pub rb_cache : * mut RBufferCache , } # [test] fn bindgen_test_layout_r_buf_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_buf_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_bytes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_mmap) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_mmap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_sparse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_sparse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_ref) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_ref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_cache) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_cache))) ; } impl Default for r_buf_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_buf_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_buf_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (methods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . whole_buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readonly) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (readonly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Oxff_priv) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (Oxff_priv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refctr) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (refctr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (type_))) ; } impl Default for r_buf_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_buf_new () -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_io (iob : * mut :: std :: os :: raw :: c_void , fd : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_bytes (bytes : * const u8 , len : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_string (msg : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_pointers (bytes : * const u8 , len : u64 , steal : bool) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_file (file : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_buf (b : * mut RBuffer) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_from_file (file : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_slice (b : * mut RBuffer , offset : u64 , size : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_empty (len : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_mmap (file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_sparse (Oxff : u8) -> * mut RBuffer ; } extern "C" { pub fn r_buf_describe (b : * mut RBuffer) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_new_with_cache (b : * mut RBuffer , steal : bool) -> * mut RBuffer ; } extern "C" { pub fn r_buf_dump (buf : * mut RBuffer , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_buf_set_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_string (b : * mut RBuffer , str_ : * const :: std :: os :: raw :: c_char) -> i64 ; } extern "C" { pub fn r_buf_append_buf (b : * mut RBuffer , a : * mut RBuffer) -> bool ; } extern "C" { pub fn r_buf_append_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_nbytes (b : * mut RBuffer , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_ut8 (b : * mut RBuffer , n : u8) -> bool ; } extern "C" { pub fn r_buf_append_ut16 (b : * mut RBuffer , n : u16) -> bool ; } extern "C" { pub fn r_buf_append_buf_slice (b : * mut RBuffer , a : * mut RBuffer , offset : u64 , size : u64) -> bool ; } extern "C" { pub fn r_buf_append_ut32 (b : * mut RBuffer , n : u32) -> bool ; } extern "C" { pub fn r_buf_append_ut64 (b : * mut RBuffer , n : u64) -> bool ; } extern "C" { pub fn r_buf_prepend_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_insert_bytes (b : * mut RBuffer , addr : u64 , buf : * const u8 , length : u64) -> i64 ; } extern "C" { pub fn r_buf_tostring (b : * mut RBuffer) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_drain (b : * mut RBuffer , length : * mut u64) -> * mut u8 ; } extern "C" { pub fn r_buf_get_string (b : * mut RBuffer , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_read (b : * mut RBuffer , buf : * mut u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_read_all (b : * mut RBuffer , blen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_buf_read8 (b : * mut RBuffer) -> u8 ; } extern "C" { pub fn r_buf_fread (b : * mut RBuffer , buf : * mut u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_read_at (b : * mut RBuffer , addr : u64 , buf : * mut u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_read8_at (b : * mut RBuffer , addr : u64) -> u8 ; } extern "C" { pub fn r_buf_tell (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_seek (b : * mut RBuffer , addr : i64 , whence : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_fread_at (b : * mut RBuffer , addr : u64 , buf : * mut u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_write (b : * mut RBuffer , buf : * const u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_fwrite (b : * mut RBuffer , buf : * const u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_at (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_write_at (b : * mut RBuffer , addr : u64 , buf : * const u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_fwrite_at (b : * mut RBuffer , addr : u64 , buf : * const u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_data (b : * mut RBuffer , size : * mut u64) -> * const u8 ; } extern "C" { pub fn r_buf_size (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_resize (b : * mut RBuffer , newsize : u64) -> bool ; } extern "C" { pub fn r_buf_ref (b : * mut RBuffer) -> * mut RBuffer ; } extern "C" { pub fn r_buf_free (b : * mut RBuffer) ; } extern "C" { pub fn r_buf_fini (b : * mut RBuffer) ; } extern "C" { pub fn r_buf_nonempty_list (b : * mut RBuffer) -> * mut RList ; } extern "C" { pub fn r_buf_uleb128 (b : * mut RBuffer , v : * mut u64) -> i64 ; } extern "C" { pub fn r_buf_sleb128 (b : * mut RBuffer , v : * mut i64) -> i64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bitmap_t { pub length : :: std :: os :: raw :: c_int , pub bitmap : * mut u64 , } # [test] fn bindgen_test_layout_r_bitmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bitmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bitmap_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bitmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bitmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bitmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bitmap_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitmap) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bitmap_t) , "::" , stringify ! (bitmap))) ; } impl Default for r_bitmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBitmap = r_bitmap_t ; extern "C" { pub fn r_bitmap_new (len : usize) -> * mut RBitmap ; } extern "C" { pub fn r_bitmap_set_bytes (b : * mut RBitmap , buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bitmap_free (b : * mut RBitmap) ; } extern "C" { pub fn r_bitmap_set (b : * mut RBitmap , bit : usize) ; } extern "C" { pub fn r_bitmap_unset (b : * mut RBitmap , bit : usize) ; } extern "C" { pub fn r_bitmap_test (b : * mut RBitmap , bit : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_time_today () -> u64 ; } extern "C" { pub fn r_time_now () -> u64 ; } extern "C" { pub fn r_time_now_mono () -> u64 ; } extern "C" { pub fn r_time_secs_tostring (timeStamp : time_t) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_time_usecs_tostring (ts : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_time_beats (ts : u64 , sub : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_time_dos_today (timeStamp : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_hfs_today (hfsts : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_unix_today (unxts : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_w32_today (ts : u64 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_asctime_r (tm : * const tm , buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_ctime_r (timer : * const time_t , buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [doc = " profiling"] # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_prof_t { pub when : timeval , pub result : f64 , } # [test] fn bindgen_test_layout_r_prof_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_prof_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_prof_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_prof_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_prof_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_prof_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_prof_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_prof_t) , "::" , stringify ! (result))) ; } # [doc = " profiling"] pub type RProfile = r_prof_t ; extern "C" { pub fn r_prof_start (p : * mut RProfile) ; } extern "C" { pub fn r_prof_end (p : * mut RProfile) -> f64 ; } extern "C" { pub fn r_debruijn_pattern (size : :: std :: os :: raw :: c_int , start : :: std :: os :: raw :: c_int , charset : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debruijn_offset (value : u64 , is_big_endian : bool) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_type_enum { pub name : * mut :: std :: os :: raw :: c_char , pub val : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_type_enum () { const UNINIT : :: std :: mem :: MaybeUninit < r_type_enum > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_type_enum > () , 16usize , concat ! ("Size of: " , stringify ! (r_type_enum))) ; assert_eq ! (:: std :: mem :: align_of :: < r_type_enum > () , 8usize , concat ! ("Alignment of " , stringify ! (r_type_enum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_type_enum) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_type_enum) , "::" , stringify ! (val))) ; } impl Default for r_type_enum { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTypeEnum = r_type_enum ; pub const RTypeKind_R_TYPE_INVALID : RTypeKind = - 1 ; pub const RTypeKind_R_TYPE_BASIC : RTypeKind = 0 ; pub const RTypeKind_R_TYPE_ENUM : RTypeKind = 1 ; pub const RTypeKind_R_TYPE_STRUCT : RTypeKind = 2 ; pub const RTypeKind_R_TYPE_UNION : RTypeKind = 3 ; pub const RTypeKind_R_TYPE_TYPEDEF : RTypeKind = 4 ; pub const RTypeKind_R_TYPE_FUNCTION : RTypeKind = 5 ; pub const RTypeKind_R_TYPE_CLASS : RTypeKind = 6 ; pub type RTypeKind = :: std :: os :: raw :: c_int ; extern "C" { pub fn r_type_set (TDB : * mut Sdb , at : u64 , field : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_type_del (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_type_kind (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) -> RTypeKind ; } extern "C" { pub fn r_type_enum_member (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char , member : * const :: std :: os :: raw :: c_char , val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_enum_getbitfield (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char , val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_get_enum (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_type_enum_free (member : * mut RTypeEnum) ; } extern "C" { pub fn r_type_get_bitsize (TDB : * mut Sdb , type_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_type_get_by_offset (TDB : * mut Sdb , offset : u64) -> * mut RList ; } extern "C" { pub fn r_type_get_struct_memb (TDB : * mut Sdb , type_ : * const :: std :: os :: raw :: c_char , offset : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_link_at (TDB : * mut Sdb , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_set_link (TDB : * mut Sdb , val : * const :: std :: os :: raw :: c_char , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_unlink (TDB : * mut Sdb , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_link_offset (TDB : * mut Sdb , val : * const :: std :: os :: raw :: c_char , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_format (TDB : * mut Sdb , t : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_exist (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_func_cc (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_ret (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_args_count (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_func_args_type (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char , i : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_args_name (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char , i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_guess (TDB : * mut Sdb , func_name : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_name (types : * mut Sdb , fname : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_is_abspath (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_c (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_directory (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_regular (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_executable (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_truncate (filename : * const :: std :: os :: raw :: c_char , newsize : u64) -> bool ; } extern "C" { pub fn r_file_new (root : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_size (str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_file_root (root : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_mmap_fd (map : * mut RMmap , filename : * const :: std :: os :: raw :: c_char , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_mmap (file : * const :: std :: os :: raw :: c_char , rw : bool , base : u64) -> * mut RMmap ; } extern "C" { pub fn r_file_mmap_read (m : * mut RMmap , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_mmap_resize (m : * mut RMmap , newsize : u64) -> bool ; } extern "C" { pub fn r_file_mmap_write (file : * const :: std :: os :: raw :: c_char , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_mmap_size (m : * mut RMmap) -> u64 ; } extern "C" { pub fn r_file_mmap_free (m : * mut RMmap) ; } extern "C" { pub fn r_file_chmod (file : * const :: std :: os :: raw :: c_char , mod_ : * const :: std :: os :: raw :: c_char , recursive : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_temp (prefix : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_path (bin : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_binsh () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_basename (path : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_dirname (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_abspath_rel (cwd : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_abspath (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_inflate (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , srcConsumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_inflate_raw (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , srcConsumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_inflate_lz4 (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , consumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_file_gzslurp (str_ : * const :: std :: os :: raw :: c_char , outlen : * mut :: std :: os :: raw :: c_int , origonfail : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_stdin_slurp (sz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_stdin_readline (sz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp (str_ : * const :: std :: os :: raw :: c_char , usz : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_range (str_ : * const :: std :: os :: raw :: c_char , off : u64 , sz : :: std :: os :: raw :: c_int , osz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_random_line (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_random_line_count (file : * const :: std :: os :: raw :: c_char , linecount : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_mmap (file : * const :: std :: os :: raw :: c_char , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_slurp_hexpairs (str_ : * const :: std :: os :: raw :: c_char , usz : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_file_dump (file : * const :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , append : bool) -> bool ; } extern "C" { pub fn r_file_dump_line (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , msg : * const :: std :: os :: raw :: c_char , replace : bool) -> bool ; } extern "C" { pub fn r_file_touch (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_hexdump (file : * const :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , append : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_rm (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_exists (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_extension (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_fexists (fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_file_slurp_line (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , context : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_lines (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_lines_from_bottom (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_temp_ex (prefix : * const :: std :: os :: raw :: c_char , ex : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_mkstemp (prefix : * const :: std :: os :: raw :: c_char , oname : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_tmpdir () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_readlink (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_copy (src : * const :: std :: os :: raw :: c_char , dst : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_move (src : * const :: std :: os :: raw :: c_char , dst : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_glob (globbed_path : * const :: std :: os :: raw :: c_char , maxdepth : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_file_lsrf (dir : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_file_is_newer (f1 : * const :: std :: os :: raw :: c_char , f2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_rm_rf (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_home (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_homef (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_configdir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_datadir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_cachedir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_pair2bin (arg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2bin_until_new (in_ : * const :: std :: os :: raw :: c_char , out : * mut * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2binmask (in_ : * const :: std :: os :: raw :: c_char , out : * mut u8 , mask : * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2bin (in_ : * const :: std :: os :: raw :: c_char , out : * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin2str (in_ : * const u8 , len : :: std :: os :: raw :: c_int , out : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin2strdup (in_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_to_byte (val : * mut u8 , c : u8) -> bool ; } extern "C" { pub fn r_hex_str_is_valid (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin_truncate (in_ : u64 , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_hex_from_c (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_code (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_no_code (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py_str (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py_array (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_c_str (out : * mut :: std :: os :: raw :: c_char , code : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_c_array (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_byte (val : * mut :: std :: os :: raw :: c_char , c : u8) ; } extern "C" { pub fn r_name_validate_print (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_validate_char (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_validate_first (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_check (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter_ro (a : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_flag (s : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter_print (s : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter (name : * mut :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_name_filter_dup (name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_shell (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_quoted_shell (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RNumCalcValue { pub d : f64 , pub n : u64 , } # [test] fn bindgen_test_layout_RNumCalcValue () { const UNINIT : :: std :: mem :: MaybeUninit < RNumCalcValue > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RNumCalcValue > () , 16usize , concat ! ("Size of: " , stringify ! (RNumCalcValue))) ; assert_eq ! (:: std :: mem :: align_of :: < RNumCalcValue > () , 8usize , concat ! ("Alignment of " , stringify ! (RNumCalcValue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . d) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RNumCalcValue) , "::" , stringify ! (d))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RNumCalcValue) , "::" , stringify ! (n))) ; } pub const RNumCalcToken_RNCNAME : RNumCalcToken = 0 ; pub const RNumCalcToken_RNCNUMBER : RNumCalcToken = 1 ; pub const RNumCalcToken_RNCEND : RNumCalcToken = 2 ; pub const RNumCalcToken_RNCINC : RNumCalcToken = 3 ; pub const RNumCalcToken_RNCDEC : RNumCalcToken = 4 ; pub const RNumCalcToken_RNCLT : RNumCalcToken = 5 ; pub const RNumCalcToken_RNCGT : RNumCalcToken = 6 ; pub const RNumCalcToken_RNCBNOT : RNumCalcToken = 7 ; pub const RNumCalcToken_RNCBAND : RNumCalcToken = 8 ; pub const RNumCalcToken_RNCBOR : RNumCalcToken = 9 ; pub const RNumCalcToken_RNCBXOR : RNumCalcToken = 10 ; pub const RNumCalcToken_RNCBXNOR : RNumCalcToken = 11 ; pub const RNumCalcToken_RNCBEQ : RNumCalcToken = 12 ; pub const RNumCalcToken_RNCBNEQ : RNumCalcToken = 13 ; pub const RNumCalcToken_RNCPLUS : RNumCalcToken = 43 ; pub const RNumCalcToken_RNCMINUS : RNumCalcToken = 45 ; pub const RNumCalcToken_RNCMUL : RNumCalcToken = 42 ; pub const RNumCalcToken_RNCDIV : RNumCalcToken = 47 ; pub const RNumCalcToken_RNCMOD : RNumCalcToken = 37 ; pub const RNumCalcToken_RNCNEG : RNumCalcToken = 126 ; pub const RNumCalcToken_RNCAND : RNumCalcToken = 38 ; pub const RNumCalcToken_RNCOR : RNumCalcToken = 124 ; pub const RNumCalcToken_RNCXOR : RNumCalcToken = 94 ; pub const RNumCalcToken_RNCPRINT : RNumCalcToken = 59 ; pub const RNumCalcToken_RNCASSIGN : RNumCalcToken = 61 ; pub const RNumCalcToken_RNCLEFTP : RNumCalcToken = 40 ; pub const RNumCalcToken_RNCRIGHTP : RNumCalcToken = 41 ; pub const RNumCalcToken_RNCSHL : RNumCalcToken = 60 ; pub const RNumCalcToken_RNCSHR : RNumCalcToken = 62 ; pub const RNumCalcToken_RNCROL : RNumCalcToken = 35 ; pub const RNumCalcToken_RNCROR : RNumCalcToken = 36 ; pub type RNumCalcToken = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_calc_t { pub curr_tok : RNumCalcToken , pub number_value : RNumCalcValue , pub string_value : [:: std :: os :: raw :: c_char ; 1024usize] , pub errors : :: std :: os :: raw :: c_int , pub oc : :: std :: os :: raw :: c_char , pub calc_err : * const :: std :: os :: raw :: c_char , pub calc_i : :: std :: os :: raw :: c_int , pub calc_buf : * const :: std :: os :: raw :: c_char , pub calc_len : :: std :: os :: raw :: c_int , pub under_calc : bool , } # [test] fn bindgen_test_layout_r_num_calc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_calc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_calc_t > () , 1088usize , concat ! ("Size of: " , stringify ! (r_num_calc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_calc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_num_calc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curr_tok) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (curr_tok))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (number_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_value) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (string_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . errors) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (errors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oc) as usize - ptr as usize } , 1052usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (oc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_err) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_i) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_buf) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_len) as usize - ptr as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . under_calc) as usize - ptr as usize } , 1084usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (under_calc))) ; } impl Default for r_num_calc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNumCalc = r_num_calc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_t { pub callback : :: std :: option :: Option < unsafe extern "C" fn (userptr : * mut r_num_t , str_ : * const :: std :: os :: raw :: c_char , ok : * mut bool) -> u64 > , pub cb_from_value : :: std :: option :: Option < unsafe extern "C" fn (userptr : * mut r_num_t , value : u64 , ok : * mut bool) -> * const :: std :: os :: raw :: c_char > , pub value : u64 , pub fvalue : f64 , pub userptr : * mut :: std :: os :: raw :: c_void , pub dbz : :: std :: os :: raw :: c_int , # [doc = " division by zero happened"] pub nc : RNumCalc , } # [test] fn bindgen_test_layout_r_num_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_t > () , 1136usize , concat ! ("Size of: " , stringify ! (r_num_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_num_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_from_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (cb_from_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fvalue) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (fvalue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . userptr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (userptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbz) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (dbz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nc) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (nc))) ; } impl Default for r_num_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNum = r_num_t ; pub type RNumCallback = :: std :: option :: Option < unsafe extern "C" fn (self_ : * mut r_num_t , str_ : * const :: std :: os :: raw :: c_char , ok : * mut bool) -> u64 > ; pub type RNumCallback2 = :: std :: option :: Option < unsafe extern "C" fn (self_ : * mut r_num_t , arg1 : u64 , ok : * mut bool) -> * const :: std :: os :: raw :: c_char > ; extern "C" { pub fn r_num_new (cb : RNumCallback , cb2 : RNumCallback2 , ptr : * mut :: std :: os :: raw :: c_void) -> * mut RNum ; } extern "C" { pub fn r_num_free (num : * mut RNum) ; } extern "C" { pub fn r_num_units (buf : * mut :: std :: os :: raw :: c_char , len : usize , number : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_conditional (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_chs (cylinder : :: std :: os :: raw :: c_int , head : :: std :: os :: raw :: c_int , sector : :: std :: os :: raw :: c_int , sectorsize : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_num_is_valid_input (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_get_input_value (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_list_join (str_ : * mut RList , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_get_name (num : * mut RNum , n : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_as_string (___ : * mut RNum , n : u64 , printable_only : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_tail (num : * mut RNum , addr : u64 , hex : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_tail_base (num : * mut RNum , addr : u64 , off : u64) -> u64 ; } extern "C" { pub fn r_num_segaddr (addr : u64 , sb : u64 , sg : :: std :: os :: raw :: c_int , a : * mut u32 , b : * mut u32) -> bool ; } extern "C" { pub fn r_num_minmax_swap (a : * mut u64 , b : * mut u64) ; } extern "C" { pub fn r_num_minmax_swap_i (a : * mut :: std :: os :: raw :: c_int , b : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_num_get (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math_err (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char , err : * mut * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math_index (num : * mut RNum , p : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_to_bits (out : * mut :: std :: os :: raw :: c_char , num : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_to_ternary (out : * mut :: std :: os :: raw :: c_char , num : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_rand (max : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_genmask (max : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_num_irand () ; } extern "C" { pub fn r_num_between (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_is_op (c : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_num_str_len (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_str_split (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_str_split_list (str_ : * mut :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_num_dup (n : u64) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_num_cos (a : f64) -> f64 ; } extern "C" { pub fn r_num_sin (a : f64) -> f64 ; } extern "C" { pub fn r_num_bit_count (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_clz32 (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_clz64 (val : u64) -> usize ; } extern "C" { pub fn r_num_bit_ctz32 (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_ctz64 (val : u64) -> usize ; } extern "C" { pub fn r_num_get_double (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> f64 ; } extern "C" { pub fn r_num_float_to_bf16 (f : f32) -> u16 ; } extern "C" { pub fn r_num_bf16_to_float (b : u16) -> f32 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableColumnType { pub name : * const :: std :: os :: raw :: c_char , pub cmp : RListComparator , } # [test] fn bindgen_test_layout_RTableColumnType () { const UNINIT : :: std :: mem :: MaybeUninit < RTableColumnType > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableColumnType > () , 16usize , concat ! ("Size of: " , stringify ! (RTableColumnType))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableColumnType > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableColumnType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableColumnType) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTableColumnType) , "::" , stringify ! (cmp))) ; } impl Default for RTableColumnType { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableColumn { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut RTableColumnType , pub align : :: std :: os :: raw :: c_int , pub width : :: std :: os :: raw :: c_int , pub maxWidth : :: std :: os :: raw :: c_int , pub forceUppercase : bool , pub total : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RTableColumn () { const UNINIT : :: std :: mem :: MaybeUninit < RTableColumn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableColumn > () , 40usize , concat ! ("Size of: " , stringify ! (RTableColumn))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableColumn > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableColumn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxWidth) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (maxWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forceUppercase) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (forceUppercase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (total))) ; } impl Default for RTableColumn { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RListInfo { pub name : * mut :: std :: os :: raw :: c_char , pub pitv : RInterval , pub vitv : RInterval , pub perm : :: std :: os :: raw :: c_int , pub extra : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RListInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RListInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RListInfo > () , 56usize , concat ! ("Size of: " , stringify ! (RListInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RListInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RListInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pitv) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (pitv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vitv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (vitv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extra) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (extra))) ; } impl Default for RListInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVecListInfo = r_vec_RVecListInfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableRow { pub items : * mut RList , } # [test] fn bindgen_test_layout_RTableRow () { const UNINIT : :: std :: mem :: MaybeUninit < RTableRow > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableRow > () , 8usize , concat ! ("Size of: " , stringify ! (RTableRow))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableRow > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableRow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . items) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableRow) , "::" , stringify ! (items))) ; } impl Default for RTableRow { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTable { pub cons : * mut :: std :: os :: raw :: c_void , pub name : * mut :: std :: os :: raw :: c_char , pub rows : * mut RList , pub cols : * mut RList , pub totalCols : :: std :: os :: raw :: c_int , pub showMode : u16 , pub adjustedCols : bool , pub maxColumnWidth : :: std :: os :: raw :: c_int , pub wrapColumns : bool , } # [test] fn bindgen_test_layout_RTable () { const UNINIT : :: std :: mem :: MaybeUninit < RTable > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTable > () , 48usize , concat ! ("Size of: " , stringify ! (RTable))) ; assert_eq ! (:: std :: mem :: align_of :: < RTable > () , 8usize , concat ! ("Alignment of " , stringify ! (RTable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rows) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (cols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . totalCols) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (totalCols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . showMode) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (showMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adjustedCols) as usize - ptr as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (adjustedCols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxColumnWidth) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (maxColumnWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wrapColumns) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (wrapColumns))) ; } impl Default for RTable { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTableSelector = :: std :: option :: Option < unsafe extern "C" fn (acc : * mut RTableRow , new_row : * mut RTableRow , nth : :: std :: os :: raw :: c_int) > ; extern "C" { pub fn r_table_row_free (_row : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_table_column_free (_col : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_table_column_clone (col : * mut RTableColumn) -> * mut RTableColumn ; } extern "C" { pub fn r_table_type (name : * const :: std :: os :: raw :: c_char) -> * mut RTableColumnType ; } extern "C" { pub fn r_table_new (name : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } extern "C" { pub fn r_table_clone (t : * const RTable) -> * mut RTable ; } extern "C" { pub fn r_table_free (t : * mut RTable) ; } extern "C" { pub fn r_table_column_nth (t : * mut RTable , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_table_add_column (t : * mut RTable , type_ : * mut RTableColumnType , name : * const :: std :: os :: raw :: c_char , maxWidth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_table_set_columnsf (t : * mut RTable , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_row_new (items : * mut RList) -> * mut RTableRow ; } extern "C" { pub fn r_table_add_row (t : * mut RTable , name : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_add_rowf (t : * mut RTable , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_add_row_list (t : * mut RTable , items : * mut RList) ; } extern "C" { pub fn r_table_tofancystring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tosimplestring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tostring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tosql (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tocsv (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tohtml (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_totsv (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tor2cmds (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tojson (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_help () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_filter (t : * mut RTable , nth : :: std :: os :: raw :: c_int , op : :: std :: os :: raw :: c_int , un : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_table_sort (t : * mut RTable , nth : :: std :: os :: raw :: c_int , inc : bool) ; } extern "C" { pub fn r_table_uniq (t : * mut RTable) ; } extern "C" { pub fn r_table_group (t : * mut RTable , nth : :: std :: os :: raw :: c_int , fcn : RTableSelector) ; } extern "C" { pub fn r_table_query (t : * mut RTable , q : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_table_hide_header (t : * mut RTable) ; } extern "C" { pub fn r_table_align (t : * mut RTable , nth : :: std :: os :: raw :: c_int , align : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_table_visual_list (table : * mut RTable , list : * mut RList , seek : u64 , len : u64 , width : :: std :: os :: raw :: c_int , va : bool) ; } extern "C" { pub fn r_table_visual_vec (table : * mut RTable , vec : * mut RVecListInfo , seek : u64 , len : u64 , width : :: std :: os :: raw :: c_int , va : bool) ; } extern "C" { pub fn r_table_push (t : * mut RTable) -> * mut RTable ; } extern "C" { pub fn r_table_pop (t : * mut RTable) -> * mut RTable ; } extern "C" { pub fn r_listinfo_new (name : * const :: std :: os :: raw :: c_char , pitv : RInterval , vitv : RInterval , perm : :: std :: os :: raw :: c_int , extra : * const :: std :: os :: raw :: c_char) -> * mut RListInfo ; } extern "C" { pub fn r_listinfo_free (info : * mut RListInfo) ; } extern "C" { pub fn r_table_columns (t : * mut RTable , cols : * mut RList) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_node_t { pub idx : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub out_nodes : * mut RList , pub in_nodes : * mut RList , pub all_neighbours : * mut RList , pub free : RListFree , } # [test] fn bindgen_test_layout_r_graph_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_node_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_graph_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . out_nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (out_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_nodes) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (in_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . all_neighbours) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (all_neighbours))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (free))) ; } impl Default for r_graph_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphNode = r_graph_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_edge_t { pub from : * mut RGraphNode , pub to : * mut RGraphNode , pub nth : i32 , } # [test] fn bindgen_test_layout_r_graph_edge_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_edge_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_edge_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_graph_edge_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_edge_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_edge_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (nth))) ; } impl Default for r_graph_edge_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphEdge = r_graph_edge_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_t { pub n_nodes : u32 , pub n_edges : u32 , pub last_index : i32 , pub nodes : * mut RList , } # [test] fn bindgen_test_layout_r_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_nodes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (n_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_edges) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (n_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_index) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (last_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (nodes))) ; } impl Default for r_graph_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraph = r_graph_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_visitor_t { pub discover_node : :: std :: option :: Option < unsafe extern "C" fn (n : * mut RGraphNode , vis : * mut r_graph_visitor_t) > , pub finish_node : :: std :: option :: Option < unsafe extern "C" fn (n : * mut RGraphNode , vis : * mut r_graph_visitor_t) > , pub tree_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub back_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub fcross_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_graph_visitor_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_visitor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_visitor_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_graph_visitor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_visitor_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_visitor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discover_node) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (discover_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . finish_node) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (finish_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree_edge) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (tree_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . back_edge) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (back_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcross_edge) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (fcross_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (data))) ; } impl Default for r_graph_visitor_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphVisitor = r_graph_visitor_t ; extern "C" { pub fn r_graph_new () -> * mut RGraph ; } extern "C" { pub fn r_graph_free (g : * mut RGraph) ; } extern "C" { pub fn r_graph_get_node (g : * const RGraph , idx : :: std :: os :: raw :: c_uint) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_node_iter (g : * const RGraph , idx : :: std :: os :: raw :: c_uint) -> * mut RListIter ; } extern "C" { pub fn r_graph_reset (g : * mut RGraph) ; } extern "C" { pub fn r_graph_add_node (g : * mut RGraph , data : * mut :: std :: os :: raw :: c_void) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_add_nodef (g : * mut RGraph , data : * mut :: std :: os :: raw :: c_void , user_free : RListFree) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_del_node (g : * mut RGraph , n : * mut RGraphNode) ; } extern "C" { pub fn r_graph_add_edge (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode) ; } extern "C" { pub fn r_graph_add_edge_at (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode , nth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_graph_node_split_forward (g : * mut RGraph , split_me : * mut RGraphNode , data : * mut :: std :: os :: raw :: c_void) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_del_edge (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode) ; } extern "C" { pub fn r_graph_get_neighbours (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_nth_neighbour (g : * const RGraph , n : * const RGraphNode , nth : :: std :: os :: raw :: c_int) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_innodes (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_all_neighbours (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_get_nodes (g : * const RGraph) -> * const RList ; } extern "C" { pub fn r_graph_adjacent (g : * const RGraph , from : * const RGraphNode , to : * const RGraphNode) -> bool ; } extern "C" { pub fn r_graph_dfs_node (g : * mut RGraph , n : * mut RGraphNode , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dfs_node_reverse (g : * mut RGraph , n : * mut RGraphNode , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dfs (g : * mut RGraph , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dom_tree (graph : * mut RGraph , root : * mut RGraphNode) -> * mut RGraph ; } extern "C" { pub fn r_graph_pdom_tree (graph : * mut RGraph , root : * mut RGraphNode) -> * mut RGraph ; } pub const RPanelType_PANEL_TYPE_DEFAULT : RPanelType = 0 ; pub const RPanelType_PANEL_TYPE_MENU : RPanelType = 1 ; pub type RPanelType = :: std :: os :: raw :: c_uint ; pub type RPanelDirectionCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , direction : :: std :: os :: raw :: c_int) > ; pub type RPanelRotateCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , rev : bool) > ; pub type RPanelPrintCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , p : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_panel_pos_t { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_pos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_pos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_pos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_panel_pos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_pos_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_panel_pos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (h))) ; } pub type RPanelPos = r_panel_pos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panel_model_t { pub directionCb : RPanelDirectionCallback , pub rotateCb : RPanelRotateCallback , pub print_cb : RPanelPrintCallback , pub type_ : RPanelType , pub cmd : * mut :: std :: os :: raw :: c_char , pub title : * mut :: std :: os :: raw :: c_char , pub bgcolor : * mut :: std :: os :: raw :: c_char , pub baseAddr : u64 , pub addr : u64 , pub cache : bool , pub cmdStrCache : * mut :: std :: os :: raw :: c_char , pub readOnly : * mut :: std :: os :: raw :: c_char , pub funcName : * mut :: std :: os :: raw :: c_char , pub filter : * mut * mut :: std :: os :: raw :: c_char , pub n_filter : :: std :: os :: raw :: c_int , pub rotate : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_model_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_model_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_model_t > () , 120usize , concat ! ("Size of: " , stringify ! (r_panel_model_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_model_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panel_model_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . directionCb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (directionCb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotateCb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (rotateCb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_cb) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (print_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgcolor) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (bgcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baseAddr) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (baseAddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStrCache) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cmdStrCache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readOnly) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (readOnly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . funcName) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (funcName))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_filter) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (n_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotate) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (rotate))) ; } impl Default for r_panel_model_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelModel = r_panel_model_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_panel_view_t { pub pos : RPanelPos , pub prevPos : RPanelPos , pub sx : :: std :: os :: raw :: c_int , pub sy : :: std :: os :: raw :: c_int , pub curpos : :: std :: os :: raw :: c_int , pub refresh : bool , pub edge : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_view_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_view_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_view_t > () , 52usize , concat ! ("Size of: " , stringify ! (r_panel_view_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_view_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_panel_view_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prevPos) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (prevPos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (sx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sy) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (sy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curpos) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (curpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refresh) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (refresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edge) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (edge))) ; } pub type RPanelView = r_panel_view_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panel_t { pub model : * mut RPanelModel , pub view : * mut RPanelView , } # [test] fn bindgen_test_layout_r_panel_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_panel_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panel_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . model) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_t) , "::" , stringify ! (model))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . view) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_t) , "::" , stringify ! (view))) ; } impl Default for r_panel_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanel = r_panel_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mem_pool_factory_t { pub limit : :: std :: os :: raw :: c_int , pub pools : * mut * mut RMemoryPool , } # [test] fn bindgen_test_layout_r_mem_pool_factory_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mem_pool_factory_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mem_pool_factory_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_mem_pool_factory_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mem_pool_factory_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mem_pool_factory_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_factory_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pools) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_factory_t) , "::" , stringify ! (pools))) ; } impl Default for r_mem_pool_factory_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPoolFactory = r_mem_pool_factory_t ; extern "C" { pub fn r_poolfactory_instance () -> * mut RPoolFactory ; } extern "C" { pub fn r_poolfactory_init (limit : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_poolfactory_new (limit : :: std :: os :: raw :: c_int) -> * mut RPoolFactory ; } extern "C" { pub fn r_poolfactory_alloc (pf : * mut RPoolFactory , nodesize : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_poolfactory_stats (pf : * mut RPoolFactory) ; } extern "C" { pub fn r_poolfactory_free (pf : * mut RPoolFactory) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RStrBuf { pub buf : [:: std :: os :: raw :: c_char ; 32usize] , pub len : usize , pub ptr : * mut :: std :: os :: raw :: c_char , pub ptrlen : usize , pub weakref : bool , } # [test] fn bindgen_test_layout_RStrBuf () { const UNINIT : :: std :: mem :: MaybeUninit < RStrBuf > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStrBuf > () , 64usize , concat ! ("Size of: " , stringify ! (RStrBuf))) ; assert_eq ! (:: std :: mem :: align_of :: < RStrBuf > () , 8usize , concat ! ("Alignment of " , stringify ! (RStrBuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrlen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (ptrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weakref) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (weakref))) ; } impl Default for RStrBuf { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_strbuf_new (s : * const :: std :: os :: raw :: c_char) -> * mut RStrBuf ; } extern "C" { pub fn r_strbuf_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut RStrBuf ; } extern "C" { pub fn r_strbuf_set (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_slice (sb : * mut RStrBuf , from : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_strbuf_setbin (sb : * mut RStrBuf , s : * const u8 , len : usize) -> bool ; } extern "C" { pub fn r_strbuf_trim (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_getbin (sb : * mut RStrBuf , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_strbuf_setf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_vsetf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_append (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_append_n (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char , l : usize) -> bool ; } extern "C" { pub fn r_strbuf_pad (sb : * mut RStrBuf , ch : :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_strbuf_prepend (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_prepend_n (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char , l : usize) -> bool ; } extern "C" { pub fn r_strbuf_appendf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_vappendf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> bool ; } extern "C" { pub fn r_strbuf_prependf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_vprependf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> bool ; } extern "C" { pub fn r_strbuf_get (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_drain (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_drain_nofree (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_replace (sb : * mut RStrBuf , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_replacef (sb : * mut RStrBuf , key : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_length (sb : * mut RStrBuf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strbuf_size (sb : * mut RStrBuf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strbuf_free (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_fini (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_init (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_tostring (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_initf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_copy (dst : * mut RStrBuf , src : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_equals (sa : * mut RStrBuf , sb : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_reserve (sb : * mut RStrBuf , len : usize) -> bool ; } extern "C" { pub fn r_strbuf_is_empty (sb : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_setptr (sb : * mut RStrBuf , p : * mut :: std :: os :: raw :: c_char , l : :: std :: os :: raw :: c_int) -> bool ; } pub const PJEncodingStr_PJ_ENCODING_STR_DEFAULT : PJEncodingStr = 0 ; pub const PJEncodingStr_PJ_ENCODING_STR_BASE64 : PJEncodingStr = 1 ; pub const PJEncodingStr_PJ_ENCODING_STR_HEX : PJEncodingStr = 2 ; pub const PJEncodingStr_PJ_ENCODING_STR_ARRAY : PJEncodingStr = 3 ; pub const PJEncodingStr_PJ_ENCODING_STR_STRIP : PJEncodingStr = 4 ; pub type PJEncodingStr = :: std :: os :: raw :: c_uint ; pub const PJEncodingNum_PJ_ENCODING_NUM_DEFAULT : PJEncodingNum = 0 ; pub const PJEncodingNum_PJ_ENCODING_NUM_STR : PJEncodingNum = 1 ; pub const PJEncodingNum_PJ_ENCODING_NUM_HEX : PJEncodingNum = 2 ; pub type PJEncodingNum = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pj_t { pub sb : RStrBuf , pub is_first : bool , pub is_key : bool , pub comma : * const :: std :: os :: raw :: c_char , pub braces : [:: std :: os :: raw :: c_char ; 128usize] , pub level : :: std :: os :: raw :: c_int , pub str_encoding : PJEncodingStr , pub num_encoding : PJEncodingNum , } # [test] fn bindgen_test_layout_pj_t () { const UNINIT : :: std :: mem :: MaybeUninit < pj_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pj_t > () , 224usize , concat ! ("Size of: " , stringify ! (pj_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pj_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pj_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_first) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (is_first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_key) as usize - ptr as usize } , 65usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (is_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comma) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (comma))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . braces) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (braces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . level) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_encoding) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (str_encoding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num_encoding) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (num_encoding))) ; } impl Default for pj_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type PJ = pj_t ; extern "C" { pub fn r_sandbox_opendir (path : * const :: std :: os :: raw :: c_char) -> * mut DIR ; } extern "C" { pub fn r_sandbox_truncate (fd : :: std :: os :: raw :: c_int , length : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_lseek (fd : :: std :: os :: raw :: c_int , addr : u64 , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_close (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_read (fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_write (fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_system (x : * const :: std :: os :: raw :: c_char , fork : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_creat (path : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sandbox_open (path : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_fopen (path : * const :: std :: os :: raw :: c_char , mode : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn r_sandbox_chdir (path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_check_path (path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sandbox_kill (pid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_enable (e : bool) -> bool ; } extern "C" { pub fn r_sandbox_disable (e : bool) -> bool ; } extern "C" { pub fn r_sandbox_grain (mask : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_check (mask : :: std :: os :: raw :: c_int) -> bool ; } pub type RStackFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_stack_t { pub elems : * mut * mut :: std :: os :: raw :: c_void , pub n_elems : :: std :: os :: raw :: c_int , pub top : :: std :: os :: raw :: c_int , pub free : RStackFree , } # [test] fn bindgen_test_layout_r_stack_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_stack_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_stack_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_stack_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_stack_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_stack_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elems) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_elems) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (n_elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (top))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (free))) ; } impl Default for r_stack_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RStack = r_stack_t ; extern "C" { pub fn r_stack_new (n : u32) -> * mut RStack ; } extern "C" { pub fn r_stack_free (s : * mut RStack) ; } extern "C" { pub fn r_stack_is_empty (s : * mut RStack) -> bool ; } extern "C" { pub fn r_stack_newf (n : u32 , f : RStackFree) -> * mut RStack ; } extern "C" { pub fn r_stack_push (s : * mut RStack , el : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_stack_pop (s : * mut RStack) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_stack_size (s : * mut RStack) -> usize ; } extern "C" { pub fn r_stack_peek (s : * mut RStack) -> * mut :: std :: os :: raw :: c_void ; } pub const RStrEnc_R_STRING_ENC_LATIN1 : RStrEnc = 97 ; pub const RStrEnc_R_STRING_ENC_UTF8 : RStrEnc = 56 ; pub const RStrEnc_R_STRING_ENC_UTF16LE : RStrEnc = 117 ; pub const RStrEnc_R_STRING_ENC_UTF32LE : RStrEnc = 85 ; pub const RStrEnc_R_STRING_ENC_UTF16BE : RStrEnc = 98 ; pub const RStrEnc_R_STRING_ENC_UTF32BE : RStrEnc = 66 ; pub const RStrEnc_R_STRING_ENC_GUESS : RStrEnc = 103 ; pub type RStrEnc = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RString { pub str_ : * mut :: std :: os :: raw :: c_char , pub buf : [:: std :: os :: raw :: c_char ; 64usize] , pub len : :: std :: os :: raw :: c_int , pub ptr : * mut :: std :: os :: raw :: c_char , pub weak : bool , } # [test] fn bindgen_test_layout_RString () { const UNINIT : :: std :: mem :: MaybeUninit < RString > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RString > () , 96usize , concat ! ("Size of: " , stringify ! (RString))) ; assert_eq ! (:: std :: mem :: align_of :: < RString > () , 8usize , concat ! ("Alignment of " , stringify ! (RString))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (weak))) ; } impl Default for RString { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RStringSlice { pub from : u16 , pub to : u16 , } # [test] fn bindgen_test_layout_RStringSlice () { const UNINIT : :: std :: mem :: MaybeUninit < RStringSlice > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStringSlice > () , 4usize , concat ! ("Size of: " , stringify ! (RStringSlice))) ; assert_eq ! (:: std :: mem :: align_of :: < RStringSlice > () , 2usize , concat ! ("Alignment of " , stringify ! (RStringSlice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStringSlice) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (RStringSlice) , "::" , stringify ! (to))) ; } pub type RVecStringSlice = r_vec_RVecStringSlice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_charset_rune_t { pub ch : * mut u8 , pub hx : * mut u8 , pub left : * mut r_charset_rune_t , pub right : * mut r_charset_rune_t , } # [test] fn bindgen_test_layout_r_charset_rune_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_charset_rune_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_charset_rune_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_charset_rune_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_charset_rune_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_charset_rune_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hx) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (hx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . left) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (left))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . right) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (right))) ; } impl Default for r_charset_rune_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCharsetRune = r_charset_rune_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_charset_t { pub loaded : bool , pub db : * mut Sdb , pub db_char_to_hex : * mut Sdb , pub custom_charset : * mut RCharsetRune , pub encode_maxkeylen : usize , pub decode_maxkeylen : usize , } # [test] fn bindgen_test_layout_r_charset_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_charset_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_charset_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_charset_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_charset_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_charset_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loaded) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (loaded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db_char_to_hex) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (db_char_to_hex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom_charset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (custom_charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode_maxkeylen) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (encode_maxkeylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode_maxkeylen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (decode_maxkeylen))) ; } impl Default for r_charset_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCharset = r_charset_t ; extern "C" { pub fn r_charset_new () -> * mut RCharset ; } extern "C" { pub fn r_charset_free (charset : * mut RCharset) ; } extern "C" { pub fn r_charset_rune_new (ch : * const u8 , hx : * const u8) -> * mut RCharsetRune ; } extern "C" { pub fn r_charset_rune_free (rcr : * mut RCharsetRune) ; } extern "C" { pub fn r_charset_encode_str (rc : * mut RCharset , out : * mut u8 , out_len : usize , in_ : * const u8 , in_len : usize , early_exit : bool) -> usize ; } extern "C" { pub fn r_charset_decode_str (rc : * mut RCharset , out : * mut u8 , out_len : usize , in_ : * const u8 , in_len : usize) -> usize ; } extern "C" { pub fn r_charset_open (c : * mut RCharset , cs : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_charset_use (c : * mut RCharset , cf : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_charset_list (c : * mut RCharset) -> * mut RList ; } extern "C" { pub fn r_charset_close (c : * mut RCharset) ; } extern "C" { pub fn r_str_repeat (ch : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_pad (pad : * mut :: std :: os :: raw :: c_char , padsz : usize , ch : :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rstr (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strstr_ansi (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rchr (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nchr (str_ : * const :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_closer_chr (b : * const :: std :: os :: raw :: c_char , s : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bounds (str_ : * const :: std :: os :: raw :: c_char , h : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_eq (s1 : * const :: std :: os :: raw :: c_char , s2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_eqi (s1 : * const :: std :: os :: raw :: c_char , s2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_crop (str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_uint , y : :: std :: os :: raw :: c_uint , x2 : :: std :: os :: raw :: c_uint , y2 : :: std :: os :: raw :: c_uint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_scale (r : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_range_in (r : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_str_size (s : * const :: std :: os :: raw :: c_char , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_len_utf8 (s : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_len_utf8_ansi (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_len_utf8char (s : * const :: std :: os :: raw :: c_char , left : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_utf8_charsize (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_utf8_charsize_prev (str_ : * const :: std :: os :: raw :: c_char , prev_len : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_utf8_charsize_last (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_filter_zeroline (str_ : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_utf8_codepoint (s : * const :: std :: os :: raw :: c_char , left : usize) -> usize ; } extern "C" { pub fn r_str_char_fullwidth (s : * const :: std :: os :: raw :: c_char , left : usize) -> bool ; } extern "C" { pub fn r_str_write (fd : :: std :: os :: raw :: c_int , b : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_sanitize (c : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_sanitize_sdb_key (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_casestr (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_firstbut (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_firstbut_escape (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_lastbut (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_split (str_ : * mut :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_slice (str_ : * const :: std :: os :: raw :: c_char , s : RStringSlice) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_asciitable () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_chartable (c : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_split_vec (str_ : * const :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> * mut RVecStringSlice ; } extern "C" { pub fn r_str_split_list (str_ : * mut :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_str_split_duplist (str_ : * const :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , trim : bool) -> * mut RList ; } extern "C" { pub fn r_str_split_lines (str_ : * mut :: std :: os :: raw :: c_char , count : * mut usize) -> * mut usize ; } extern "C" { pub fn r_str_replace (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_all (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_icase (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int , keep_case : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_in (str_ : * mut :: std :: os :: raw :: c_char , sz : u32 , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_replace_thunked (str_ : * mut :: std :: os :: raw :: c_char , clean : * mut :: std :: os :: raw :: c_char , thunk : * mut :: std :: os :: raw :: c_int , clen : :: std :: os :: raw :: c_int , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bits (strout : * mut :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , bitz : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_bits64 (strout : * mut :: std :: os :: raw :: c_char , in_ : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_bits_from_string (buf : * const :: std :: os :: raw :: c_char , bitz : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_str_rwx (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_ch (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char , g : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_char (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_char_once (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_remove_char (str_ : * mut :: std :: os :: raw :: c_char , c : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_rwx_i (rwx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_fmtargs (fmt : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_arg_escape (arg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_arg_unescape (arg : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_argv (str_ : * const :: std :: os :: raw :: c_char , _argc : * mut :: std :: os :: raw :: c_int) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_argv_free (argv : * mut * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_new (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_fixspaces (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_snprintf (string : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_is_ascii (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_nextword (s : * mut :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_is_printable (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_printable_limited (str_ : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_str_is_printable_incl_newlines (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_appendlen (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char , slen : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_newvf (fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_distance (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_newlen (str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_sysbits (v : RSysBits) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trunc_ellipsis (str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bool (b : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_is_true (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_false (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_bool (val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_ansi_chrn (str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ansi_strip (str_ : * mut :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_html_strip (ptr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_html_rgbparse (p : * const :: std :: os :: raw :: c_char , r : * mut u8 , g : * mut u8 , b : * mut u8 , a : * mut u8) -> bool ; } extern "C" { pub fn r_str_ansi_len (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_display_width (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_nlen (str_ : * const :: std :: os :: raw :: c_char , len : usize) -> usize ; } extern "C" { pub fn r_str_ansi_trim (str_ : * mut :: std :: os :: raw :: c_char , str_len : :: std :: os :: raw :: c_int , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_filter (str_ : * mut :: std :: os :: raw :: c_char , out : * mut * mut :: std :: os :: raw :: c_char , cposs : * mut * mut :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_resetbg (str_ : * const :: std :: os :: raw :: c_char , bgcolor : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ansi_crop (str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_uint , y : :: std :: os :: raw :: c_uint , x2 : :: std :: os :: raw :: c_uint , y2 : :: std :: os :: raw :: c_uint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_count (string : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_char_count (string : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_word_get0set (stra : * mut :: std :: os :: raw :: c_char , stralen : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , newstr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_set0 (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_word_set0_stack (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_word_get0 (str_ : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_get_first (string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_emptylines (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_ntrim (str_ : * mut :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_md2txt (page : * const :: std :: os :: raw :: c_char , usecolor : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_wrap (str_ : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_dup (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_ndup (str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_lines (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_head (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_head_ro (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_head_wp (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_tail (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_args (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_hash (str_ : * const :: std :: os :: raw :: c_char) -> u32 ; } extern "C" { pub fn r_str_hash64 (str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_str_trim_nc (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nstr (from : * const :: std :: os :: raw :: c_char , to : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_lchr (str_ : * const :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sub_str_lchr (str_ : * const :: std :: os :: raw :: c_char , start : :: std :: os :: raw :: c_int , end : :: std :: os :: raw :: c_int , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sub_str_rchr (str_ : * const :: std :: os :: raw :: c_char , start : :: std :: os :: raw :: c_int , end : :: std :: os :: raw :: c_int , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ichr (str_ : * mut :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ccmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_str_cmp_list (list : * const :: std :: os :: raw :: c_char , item : * const :: std :: os :: raw :: c_char , sep : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_casecmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ncasecmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char , n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_get (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_get_fail (str_ : * const :: std :: os :: raw :: c_char , failstr : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_getf (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ndup (ptr : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_inject (begin : * mut :: std :: os :: raw :: c_char , end : * mut :: std :: os :: raw :: c_char , str_ : * mut :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_delta (p : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_filter (str_ : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_tok (str1 : * const :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char , len : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_tok_next (s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_tok_r (str_ : * mut :: std :: os :: raw :: c_char , delim : * const :: std :: os :: raw :: c_char , save_ptr : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_mb_to_wc (buf : * const :: std :: os :: raw :: c_char) -> * mut wchar_t ; } extern "C" { pub fn r_str_wc_to_mb (buf : * const wchar_t) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_mb_to_wc_l (buf : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut wchar_t ; } extern "C" { pub fn r_str_wc_to_mb_l (buf : * const wchar_t , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_str_xy (s : * const :: std :: os :: raw :: c_char , word : * const :: std :: os :: raw :: c_char , prev : * const :: std :: os :: raw :: c_char , x : * mut :: std :: os :: raw :: c_int , y : * mut :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } pub type str_operation = :: std :: option :: Option < unsafe extern "C" fn (c : * mut :: std :: os :: raw :: c_char) > ; extern "C" { pub fn r_str_do_until_token (op : str_operation , str_ : * mut :: std :: os :: raw :: c_char , tok : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_reverse (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_re_match (str_ : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_re_replace (str_ : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , sub : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_path_unescape (path : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_path_escape (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_unescape (buf : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_sanitize_r2 (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_raw (buf : * const u8 , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_sh (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_sql (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_dot (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_latin1 (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool , colors : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf8 (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf8_keep_printable (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf16le (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf32le (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf16be (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf32be (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_byte_escape (p : * const :: std :: os :: raw :: c_char , dst : * mut * mut :: std :: os :: raw :: c_char , dot_nl : :: std :: os :: raw :: c_int , default_dot : bool , esc_bslash : bool) ; } extern "C" { pub fn r_str_format_msvc_argv (argc : usize , argv : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_uri_decode (buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_uri_encode (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_utf16_decode (s : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_utf16_to_utf8 (dst : * mut u8 , len_dst : :: std :: os :: raw :: c_int , src : * const u8 , len_src : :: std :: os :: raw :: c_int , little_endian : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_utf16_encode (s : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_json (s : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_json_strip (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_encoded_json (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , encoding : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_r2_prefix (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nlen (s : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_nlen_w (s : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_wstr_clen (s : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_prepend (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_prefix_all (s : * const :: std :: os :: raw :: c_char , pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_append (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_append_owned (ptr : * mut :: std :: os :: raw :: c_char , string : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_appendf (ptr : * mut :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_appendch (x : * mut :: std :: os :: raw :: c_char , y : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_case (str_ : * mut :: std :: os :: raw :: c_char , up : bool) ; } extern "C" { pub fn r_str_trim_path (s : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_contains_macro (input_value : * const :: std :: os :: raw :: c_char) -> u8 ; } extern "C" { pub fn r_str_truncate_cmd (string : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_glob (str_ : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_between (str_ : * const :: std :: os :: raw :: c_char , prefix : * const :: std :: os :: raw :: c_char , suffix : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_startswith (str_ : * const :: std :: os :: raw :: c_char , needle : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_endswith (str_ : * const :: std :: os :: raw :: c_char , needle : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_isnumber (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_last (in_ : * const :: std :: os :: raw :: c_char , ch : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_highlight (str_ : * mut :: std :: os :: raw :: c_char , word : * const :: std :: os :: raw :: c_char , color : * const :: std :: os :: raw :: c_char , color_reset : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_qrcode_gen (text : * const u8 , len : :: std :: os :: raw :: c_int , utf8 : bool , inverted : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_from_ut64 (val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_stripLine (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_list_join (str_ : * mut RList , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_array_join (a : * mut * const :: std :: os :: raw :: c_char , n : usize , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_sep (base : * const :: std :: os :: raw :: c_char , sep : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rsep (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , sep : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_donut (size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_version (program : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ss (msg : * const :: std :: os :: raw :: c_char , nl : * const :: std :: os :: raw :: c_char , cs : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_after (s : * mut :: std :: os :: raw :: c_char , c : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_printf (buffer : * mut :: std :: os :: raw :: c_char , buffer_size : usize , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [doc = " __attribute__ ((format (printf, 3, 4)));"] pub fn r_str_scanf (buffer : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [doc = " __attribute__ ((format (scanf, 2, 3)));"] pub fn r_string_get (s : * const RString , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_string_new (is : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> RString ; } extern "C" { pub fn r_string_free (s : * mut RString) ; } extern "C" { pub fn r_string_from (is : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> RString ; } extern "C" { pub fn r_string_unweak (a : * mut RString) ; } extern "C" { pub fn r_string_trim (s : * mut RString) ; } extern "C" { pub fn r_string_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> RString ; } extern "C" { pub fn r_string_append (a : * mut RString , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_string_appendf (a : * mut RString , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_str_pseudo_transform (rules : * mut * const :: std :: os :: raw :: c_char , asm_str : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_pseudo_subvar (pseudo : * mut :: std :: os :: raw :: c_char , varmap : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_str_constpool_t { pub ht : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_str_constpool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_str_constpool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_str_constpool_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_str_constpool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_str_constpool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_str_constpool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_str_constpool_t) , "::" , stringify ! (ht))) ; } impl Default for r_str_constpool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RStrConstPool = r_str_constpool_t ; extern "C" { pub fn r_str_constpool_init (pool : * mut RStrConstPool) -> bool ; } extern "C" { pub fn r_str_constpool_fini (pool : * mut RStrConstPool) ; } extern "C" { pub fn r_str_constpool_get (pool : * mut RStrConstPool , str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } pub type RPVectorComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RVectorFree = :: std :: option :: Option < unsafe extern "C" fn (e : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) > ; pub type RPVectorFree = :: std :: option :: Option < unsafe extern "C" fn (e : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vector_t { pub a : * mut :: std :: os :: raw :: c_void , pub len : usize , pub capacity : usize , pub elem_size : usize , pub free : RVectorFree , pub free_user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vector_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (elem_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (free_user))) ; } impl Default for r_vector_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVector = r_vector_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pvector_t { pub v : RVector , } # [test] fn bindgen_test_layout_r_pvector_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pvector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pvector_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_pvector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pvector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pvector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pvector_t) , "::" , stringify ! (v))) ; } impl Default for r_pvector_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPVector = r_pvector_t ; extern "C" { pub fn r_vector_init (vec : * mut RVector , elem_size : usize , free : RVectorFree , free_user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_new (elem_size : usize , free : RVectorFree , free_user : * mut :: std :: os :: raw :: c_void) -> * mut RVector ; } extern "C" { pub fn r_vector_fini (vec : * mut RVector) ; } extern "C" { pub fn r_vector_free (vec : * mut RVector) ; } extern "C" { pub fn r_vector_clone (vec : * mut RVector) -> * mut RVector ; } extern "C" { pub fn r_vector_copy (d : * mut RVector , s : * mut RVector) -> bool ; } extern "C" { pub fn r_vector_clear (vec : * mut RVector) ; } extern "C" { pub fn r_vector_assign (vec : * mut RVector , p : * mut :: std :: os :: raw :: c_void , elem : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_assign_at (vec : * mut RVector , index : usize , elem : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_remove_at (vec : * mut RVector , index : usize , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_insert (vec : * mut RVector , index : usize , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_insert_range (vec : * mut RVector , index : usize , first : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_pop (vec : * mut RVector , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_pop_front (vec : * mut RVector , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_push (vec : * mut RVector , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_push_front (vec : * mut RVector , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_reserve (vec : * mut RVector , capacity : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_shrink (vec : * mut RVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_flush (vec : * mut RVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_init (vec : * mut RPVector , free : RPVectorFree) ; } extern "C" { pub fn r_pvector_fini (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_new (free : RPVectorFree) -> * mut RPVector ; } extern "C" { pub fn r_pvector_new_with_len (free : RPVectorFree , length : usize) -> * mut RPVector ; } extern "C" { pub fn r_pvector_clear (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_free (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_contains (vec : * mut RPVector , x : * mut :: std :: os :: raw :: c_void) -> * mut * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_remove_at (vec : * mut RPVector , index : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_remove_data (vec : * mut RPVector , x : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_pvector_pop (vec : * mut RPVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_pop_front (vec : * mut RPVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_sort (vec : * mut RPVector , cmp : RPVectorComparator) ; } extern "C" { pub fn r_pvector_bsearch (vec : * mut RPVector , needle : * mut :: std :: os :: raw :: c_void , cmp : RPVectorComparator) -> :: std :: os :: raw :: c_int ; } pub type cc_t = :: std :: os :: raw :: c_uchar ; pub type speed_t = :: std :: os :: raw :: c_uint ; pub type tcflag_t = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct termios { pub c_iflag : tcflag_t , pub c_oflag : tcflag_t , pub c_cflag : tcflag_t , pub c_lflag : tcflag_t , pub c_line : cc_t , pub c_cc : [cc_t ; 32usize] , pub __bindgen_anon_1 : termios__bindgen_ty_1 , pub __bindgen_anon_2 : termios__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union termios__bindgen_ty_1 { pub __ispeed : speed_t , pub c_ispeed : speed_t , } # [test] fn bindgen_test_layout_termios__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < termios__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (termios__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < termios__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (termios__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ispeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_1) , "::" , stringify ! (__ispeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_ispeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_1) , "::" , stringify ! (c_ispeed))) ; } impl Default for termios__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub union termios__bindgen_ty_2 { pub __ospeed : speed_t , pub c_ospeed : speed_t , } # [test] fn bindgen_test_layout_termios__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < termios__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (termios__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < termios__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (termios__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ospeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_2) , "::" , stringify ! (__ospeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_ospeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_2) , "::" , stringify ! (c_ospeed))) ; } impl Default for termios__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_termios () { const UNINIT : :: std :: mem :: MaybeUninit < termios > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios > () , 60usize , concat ! ("Size of: " , stringify ! (termios))) ; assert_eq ! (:: std :: mem :: align_of :: < termios > () , 4usize , concat ! ("Alignment of " , stringify ! (termios))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_iflag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_iflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_oflag) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_oflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_cflag) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_cflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_lflag) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_lflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_line) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_cc) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_cc))) ; } impl Default for termios { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type sa_family_t = :: std :: os :: raw :: c_ushort ; pub type RCoreHelpMessage = [* const :: std :: os :: raw :: c_char ; 0usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_code_colors_t { pub string : * mut :: std :: os :: raw :: c_char , pub cpp : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub number : * mut :: std :: os :: raw :: c_char , pub keyword : * mut :: std :: os :: raw :: c_char , pub types : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cons_code_colors_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_code_colors_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_code_colors_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_cons_code_colors_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_code_colors_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_code_colors_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (cpp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyword) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (keyword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . types) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (types))) ; } impl Default for r_cons_code_colors_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsCodeColors = r_cons_code_colors_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_mark_t { pub addr : u64 , pub name : * mut :: std :: os :: raw :: c_char , pub row : :: std :: os :: raw :: c_int , pub col : :: std :: os :: raw :: c_int , pub pos : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cons_mark_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_mark_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_mark_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cons_mark_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_mark_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_mark_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (row))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . col) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (col))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (pos))) ; } impl Default for r_cons_mark_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsMark = r_cons_mark_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cons_fd_pair { pub fd_src : i16 , pub fd_new : i16 , pub fd_bak : i16 , } # [test] fn bindgen_test_layout_r_cons_fd_pair () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_fd_pair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_fd_pair > () , 6usize , concat ! ("Size of: " , stringify ! (r_cons_fd_pair))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_fd_pair > () , 2usize , concat ! ("Alignment of " , stringify ! (r_cons_fd_pair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_src) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_src))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_new) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_bak) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_bak))) ; } pub type RConsFdPair = r_cons_fd_pair ; pub type RVecFdPairs = r_vec_RVecFdPairs_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RConsTheme { pub name : * const :: std :: os :: raw :: c_char , pub script : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RConsTheme () { const UNINIT : :: std :: mem :: MaybeUninit < RConsTheme > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsTheme > () , 16usize , concat ! ("Size of: " , stringify ! (RConsTheme))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsTheme > () , 8usize , concat ! ("Alignment of " , stringify ! (RConsTheme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsTheme) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . script) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RConsTheme) , "::" , stringify ! (script))) ; } impl Default for RConsTheme { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_grep_t { pub strings : * mut RList , pub str_ : * mut :: std :: os :: raw :: c_char , pub counter : :: std :: os :: raw :: c_int , pub charCounter : bool , pub less : :: std :: os :: raw :: c_int , pub hud : bool , pub human : bool , pub gron : bool , pub json : bool , pub json_path : * mut :: std :: os :: raw :: c_char , pub range_line : :: std :: os :: raw :: c_int , pub line : :: std :: os :: raw :: c_int , pub sort : :: std :: os :: raw :: c_int , pub sort_uniq : :: std :: os :: raw :: c_int , pub sort_row : :: std :: os :: raw :: c_int , pub sort_invert : bool , pub f_line : :: std :: os :: raw :: c_int , pub l_line : :: std :: os :: raw :: c_int , pub tokens : [:: std :: os :: raw :: c_int ; 64usize] , pub tokens_used : :: std :: os :: raw :: c_int , pub amp : :: std :: os :: raw :: c_int , pub zoom : :: std :: os :: raw :: c_int , pub zoomy : :: std :: os :: raw :: c_int , pub xml : bool , pub icase : bool , pub ascart : bool , pub code : bool , pub colorcode : bool , } # [test] fn bindgen_test_layout_r_cons_grep_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_grep_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_grep_t > () , 352usize , concat ! ("Size of: " , stringify ! (r_cons_grep_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_grep_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_grep_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . counter) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charCounter) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (charCounter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . less) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (less))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hud) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (hud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . human) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (human))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gron) as usize - ptr as usize } , 30usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (gron))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . json) as usize - ptr as usize } , 31usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (json))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . json_path) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (json_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . range_line) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (range_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_uniq) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_uniq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_row) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_row))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_invert) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_invert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f_line) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (f_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_line) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (l_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tokens) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (tokens))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tokens_used) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (tokens_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . amp) as usize - ptr as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (amp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoomy) as usize - ptr as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (zoomy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xml) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (xml))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icase) as usize - ptr as usize } , 345usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (icase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ascart) as usize - ptr as usize } , 346usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (ascart))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 347usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colorcode) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (colorcode))) ; } impl Default for r_cons_grep_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsGrep = r_cons_grep_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct rcolor_t { pub attr : u8 , pub a : u8 , pub r : u8 , pub g : u8 , pub b : u8 , pub r2 : u8 , pub g2 : u8 , pub b2 : u8 , pub id16 : i8 , } # [test] fn bindgen_test_layout_rcolor_t () { const UNINIT : :: std :: mem :: MaybeUninit < rcolor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < rcolor_t > () , 9usize , concat ! ("Size of: " , stringify ! (rcolor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < rcolor_t > () , 1usize , concat ! ("Alignment of " , stringify ! (rcolor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (g))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r2) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (r2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g2) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (g2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b2) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (b2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id16) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (id16))) ; } pub type RColor = rcolor_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cons_palette_t { pub b0x00 : RColor , pub b0x7f : RColor , pub b0xff : RColor , pub args : RColor , pub bin : RColor , pub btext : RColor , pub call : RColor , pub cjmp : RColor , pub cmp : RColor , pub hint : RColor , pub comment : RColor , pub usercomment : RColor , pub creg : RColor , pub flag : RColor , pub fline : RColor , pub floc : RColor , pub flow : RColor , pub flow2 : RColor , pub fname : RColor , pub help : RColor , pub input : RColor , pub invalid : RColor , pub jmp : RColor , pub label : RColor , pub math : RColor , pub mov : RColor , pub nop : RColor , pub num : RColor , pub addr : RColor , pub other : RColor , pub pop : RColor , pub prompt : RColor , pub bgprompt : RColor , pub push : RColor , pub crypto : RColor , pub reg : RColor , pub reset : RColor , pub ret : RColor , pub swi : RColor , pub trap : RColor , pub ucall : RColor , pub ujmp : RColor , pub ai_read : RColor , pub ai_write : RColor , pub ai_exec : RColor , pub ai_seq : RColor , pub ai_ascii : RColor , pub gui_cflow : RColor , pub gui_dataoffset : RColor , pub gui_background : RColor , pub gui_background2 : RColor , pub gui_border : RColor , pub wordhl : RColor , pub linehl : RColor , pub var : RColor , pub var_name : RColor , pub var_type : RColor , pub var_addr : RColor , pub widget_bg : RColor , pub widget_sel : RColor , pub graph_box : RColor , pub graph_box2 : RColor , pub graph_box3 : RColor , pub graph_box4 : RColor , pub graph_true : RColor , pub graph_false : RColor , pub graph_trufae : RColor , pub graph_traced : RColor , pub graph_current : RColor , pub diff_match : RColor , pub diff_unmatch : RColor , pub diff_unknown : RColor , pub diff_new : RColor , } # [test] fn bindgen_test_layout_r_cons_palette_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_palette_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_palette_t > () , 657usize , concat ! ("Size of: " , stringify ! (r_cons_palette_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_palette_t > () , 1usize , concat ! ("Alignment of " , stringify ! (r_cons_palette_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x00) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0x00))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x7f) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0x7f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0xff) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0xff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btext) as usize - ptr as usize } , 45usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (btext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 54usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmp) as usize - ptr as usize } , 63usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (cjmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usercomment) as usize - ptr as usize } , 99usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (usercomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fline) as usize - ptr as usize } , 126usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (fline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . floc) as usize - ptr as usize } , 135usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (floc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow2) as usize - ptr as usize } , 153usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flow2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (fname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 171usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invalid) as usize - ptr as usize } , 189usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (invalid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 198usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (label))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . math) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (math))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mov) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (mov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nop) as usize - ptr as usize } , 234usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (nop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 243usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other) as usize - ptr as usize } , 261usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (other))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 270usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgprompt) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (bgprompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 297usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crypto) as usize - ptr as usize } , 306usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 315usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 333usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 342usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 351usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucall) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ucall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ujmp) as usize - ptr as usize } , 369usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ujmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_read) as usize - ptr as usize } , 378usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_write) as usize - ptr as usize } , 387usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_exec) as usize - ptr as usize } , 396usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_exec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_seq) as usize - ptr as usize } , 405usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_ascii) as usize - ptr as usize } , 414usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_ascii))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_cflow) as usize - ptr as usize } , 423usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_cflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_dataoffset) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_dataoffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background) as usize - ptr as usize } , 441usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_background))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background2) as usize - ptr as usize } , 450usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_background2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_border) as usize - ptr as usize } , 459usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_border))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wordhl) as usize - ptr as usize } , 468usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (wordhl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linehl) as usize - ptr as usize } , 477usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (linehl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var) as usize - ptr as usize } , 486usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_name) as usize - ptr as usize } , 495usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_type) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_addr) as usize - ptr as usize } , 513usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_bg) as usize - ptr as usize } , 522usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (widget_bg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_sel) as usize - ptr as usize } , 531usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (widget_sel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box) as usize - ptr as usize } , 540usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box2) as usize - ptr as usize } , 549usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box3) as usize - ptr as usize } , 558usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box4) as usize - ptr as usize } , 567usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_true) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_true))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_false) as usize - ptr as usize } , 585usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_false))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_trufae) as usize - ptr as usize } , 594usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_trufae))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_traced) as usize - ptr as usize } , 603usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_current) as usize - ptr as usize } , 612usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_match) as usize - ptr as usize } , 621usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unmatch) as usize - ptr as usize } , 630usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_unmatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unknown) as usize - ptr as usize } , 639usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_unknown))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_new) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_new))) ; } pub type RConsPalette = r_cons_palette_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_printable_palette_t { pub b0x00 : * mut :: std :: os :: raw :: c_char , pub b0x7f : * mut :: std :: os :: raw :: c_char , pub b0xff : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub bin : * mut :: std :: os :: raw :: c_char , pub btext : * mut :: std :: os :: raw :: c_char , pub call : * mut :: std :: os :: raw :: c_char , pub cjmp : * mut :: std :: os :: raw :: c_char , pub cmp : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub usercomment : * mut :: std :: os :: raw :: c_char , pub creg : * mut :: std :: os :: raw :: c_char , pub flag : * mut :: std :: os :: raw :: c_char , pub fline : * mut :: std :: os :: raw :: c_char , pub floc : * mut :: std :: os :: raw :: c_char , pub flow : * mut :: std :: os :: raw :: c_char , pub flow2 : * mut :: std :: os :: raw :: c_char , pub fname : * mut :: std :: os :: raw :: c_char , pub help : * mut :: std :: os :: raw :: c_char , pub input : * mut :: std :: os :: raw :: c_char , pub invalid : * mut :: std :: os :: raw :: c_char , pub jmp : * mut :: std :: os :: raw :: c_char , pub label : * mut :: std :: os :: raw :: c_char , pub math : * mut :: std :: os :: raw :: c_char , pub mov : * mut :: std :: os :: raw :: c_char , pub nop : * mut :: std :: os :: raw :: c_char , pub num : * mut :: std :: os :: raw :: c_char , pub addr : * mut :: std :: os :: raw :: c_char , pub other : * mut :: std :: os :: raw :: c_char , pub pop : * mut :: std :: os :: raw :: c_char , pub prompt : * mut :: std :: os :: raw :: c_char , pub bgprompt : * mut :: std :: os :: raw :: c_char , pub push : * mut :: std :: os :: raw :: c_char , pub crypto : * mut :: std :: os :: raw :: c_char , pub reg : * mut :: std :: os :: raw :: c_char , pub reset : * mut :: std :: os :: raw :: c_char , pub ret : * mut :: std :: os :: raw :: c_char , pub swi : * mut :: std :: os :: raw :: c_char , pub trap : * mut :: std :: os :: raw :: c_char , pub ucall : * mut :: std :: os :: raw :: c_char , pub ujmp : * mut :: std :: os :: raw :: c_char , pub ai_read : * mut :: std :: os :: raw :: c_char , pub ai_write : * mut :: std :: os :: raw :: c_char , pub ai_exec : * mut :: std :: os :: raw :: c_char , pub ai_seq : * mut :: std :: os :: raw :: c_char , pub ai_ascii : * mut :: std :: os :: raw :: c_char , pub ai_unmap : * mut :: std :: os :: raw :: c_char , pub gui_cflow : * mut :: std :: os :: raw :: c_char , pub gui_dataoffset : * mut :: std :: os :: raw :: c_char , pub gui_background : * mut :: std :: os :: raw :: c_char , pub gui_background2 : * mut :: std :: os :: raw :: c_char , pub gui_border : * mut :: std :: os :: raw :: c_char , pub wordhl : * mut :: std :: os :: raw :: c_char , pub linehl : * mut :: std :: os :: raw :: c_char , pub var : * mut :: std :: os :: raw :: c_char , pub var_name : * mut :: std :: os :: raw :: c_char , pub var_type : * mut :: std :: os :: raw :: c_char , pub var_addr : * mut :: std :: os :: raw :: c_char , pub widget_bg : * mut :: std :: os :: raw :: c_char , pub widget_sel : * mut :: std :: os :: raw :: c_char , pub graph_box : * mut :: std :: os :: raw :: c_char , pub graph_box2 : * mut :: std :: os :: raw :: c_char , pub graph_box3 : * mut :: std :: os :: raw :: c_char , pub graph_box4 : * mut :: std :: os :: raw :: c_char , pub diff_match : * mut :: std :: os :: raw :: c_char , pub diff_unmatch : * mut :: std :: os :: raw :: c_char , pub diff_unknown : * mut :: std :: os :: raw :: c_char , pub diff_new : * mut :: std :: os :: raw :: c_char , pub graph_true : * mut :: std :: os :: raw :: c_char , pub graph_false : * mut :: std :: os :: raw :: c_char , pub graph_trufae : * mut :: std :: os :: raw :: c_char , pub graph_traced : * mut :: std :: os :: raw :: c_char , pub graph_current : * mut :: std :: os :: raw :: c_char , pub rainbow : * mut * mut :: std :: os :: raw :: c_char , pub rainbow_sz : usize , } # [test] fn bindgen_test_layout_r_cons_printable_palette_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_printable_palette_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_printable_palette_t > () , 600usize , concat ! ("Size of: " , stringify ! (r_cons_printable_palette_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_printable_palette_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_printable_palette_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x00) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0x00))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x7f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0x7f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0xff) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0xff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btext) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (btext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmp) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (cjmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usercomment) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (usercomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fline) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (fline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . floc) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (floc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow2) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flow2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (fname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invalid) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (invalid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (label))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . math) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (math))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mov) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (mov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nop) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (nop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (other))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgprompt) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (bgprompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crypto) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucall) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ucall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ujmp) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ujmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_read) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_write) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_exec) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_exec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_seq) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_ascii) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_ascii))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_unmap) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_unmap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_cflow) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_cflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_dataoffset) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_dataoffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_background))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background2) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_background2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_border) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_border))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wordhl) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (wordhl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linehl) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (linehl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_name) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_type) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_addr) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_bg) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (widget_bg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_sel) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (widget_sel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box2) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box3) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box4) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_match) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unmatch) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_unmatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unknown) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_unknown))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_new) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_true) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_true))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_false) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_false))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_trufae) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_trufae))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_traced) as usize - ptr as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_current) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rainbow) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (rainbow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rainbow_sz) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (rainbow_sz))) ; } impl Default for r_cons_printable_palette_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsPrintablePalette = r_cons_printable_palette_t ; pub type RConsEvent = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_canvas_t { pub cons : * mut r_cons_t , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub b : * mut * mut :: std :: os :: raw :: c_char , pub blen : * mut :: std :: os :: raw :: c_int , pub bsize : * mut :: std :: os :: raw :: c_int , pub attr : * const :: std :: os :: raw :: c_char , pub attrs : * mut [u64 ; 11usize] , pub constpool : RStrConstPool , pub sx : :: std :: os :: raw :: c_int , pub sy : :: std :: os :: raw :: c_int , pub color : :: std :: os :: raw :: c_int , pub linemode : :: std :: os :: raw :: c_int , pub bgcolor : * mut :: std :: os :: raw :: c_char , pub flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cons_canvas_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_canvas_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_canvas_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_cons_canvas_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_canvas_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_canvas_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blen) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (blen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bsize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (bsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attrs) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (attrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sx) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (sx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sy) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (sy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linemode) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (linemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgcolor) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (bgcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (flags))) ; } impl Default for r_cons_canvas_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsCanvas = r_cons_canvas_t ; pub type RConsEditorCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RConsClickCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsBreakCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) > ; pub type RConsSleepBeginCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; pub type RConsSleepEndCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) > ; pub type RConsFunctionKey = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , fkey : :: std :: os :: raw :: c_int) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_context_t { pub grep : RConsGrep , pub buffer : * mut :: std :: os :: raw :: c_char , pub buffer_len : usize , pub buffer_sz : usize , pub buffer_limit : usize , pub breaked : bool , pub was_breaked : bool , pub unbreakable : bool , pub break_stack : * mut RStack , pub event_interrupt : RConsEvent , pub event_interrupt_data : * mut :: std :: os :: raw :: c_void , pub cmd_str_depth : :: std :: os :: raw :: c_int , pub noflush : bool , pub log_callback : RLogCallback , pub lastOutput : * mut :: std :: os :: raw :: c_char , pub lastLength : :: std :: os :: raw :: c_int , pub lastMode : bool , pub lastEnabled : bool , pub is_interactive : bool , pub pageable : bool , pub color_mode : :: std :: os :: raw :: c_int , pub cpal : RConsPalette , pub pal : RConsPrintablePalette , pub sorted_lines : * mut RList , pub unsorted_lines : * mut RList , pub sorted_column : :: std :: os :: raw :: c_int , pub demo : bool , pub is_html : bool , pub tmp_html : bool , pub was_html : bool , pub grep_color : bool , pub grep_highlight : bool , pub filter : bool , pub use_tts : bool , pub flush : bool , pub colors : [:: std :: os :: raw :: c_int ; 256usize] , pub marks : * mut RList , } # [test] fn bindgen_test_layout_r_cons_context_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_context_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_context_t > () , 2776usize , concat ! ("Size of: " , stringify ! (r_cons_context_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_context_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_context_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_len) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_sz) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_limit) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breaked) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . was_breaked) as usize - ptr as usize } , 385usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (was_breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unbreakable) as usize - ptr as usize } , 386usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (unbreakable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_stack) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (break_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_interrupt) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (event_interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_interrupt_data) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (event_interrupt_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_str_depth) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (cmd_str_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . noflush) as usize - ptr as usize } , 420usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (noflush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log_callback) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (log_callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastOutput) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastOutput))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastLength) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastLength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastMode) as usize - ptr as usize } , 444usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastEnabled) as usize - ptr as usize } , 445usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastEnabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_interactive) as usize - ptr as usize } , 446usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (is_interactive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pageable) as usize - ptr as usize } , 447usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (pageable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color_mode) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (color_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpal) as usize - ptr as usize } , 452usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (cpal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pal) as usize - ptr as usize } , 1112usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (pal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted_lines) as usize - ptr as usize } , 1712usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (sorted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unsorted_lines) as usize - ptr as usize } , 1720usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (unsorted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted_column) as usize - ptr as usize } , 1728usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (sorted_column))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demo) as usize - ptr as usize } , 1732usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (demo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_html) as usize - ptr as usize } , 1733usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (is_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmp_html) as usize - ptr as usize } , 1734usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (tmp_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . was_html) as usize - ptr as usize } , 1735usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (was_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep_color) as usize - ptr as usize } , 1736usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep_color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep_highlight) as usize - ptr as usize } , 1737usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 1738usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_tts) as usize - ptr as usize } , 1739usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (use_tts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flush) as usize - ptr as usize } , 1740usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (flush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colors) as usize - ptr as usize } , 1744usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (colors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . marks) as usize - ptr as usize } , 2768usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (marks))) ; } impl Default for r_cons_context_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsContext = r_cons_context_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RConsCursorPos { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RConsCursorPos () { const UNINIT : :: std :: mem :: MaybeUninit < RConsCursorPos > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsCursorPos > () , 8usize , concat ! ("Size of: " , stringify ! (RConsCursorPos))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsCursorPos > () , 4usize , concat ! ("Alignment of " , stringify ! (RConsCursorPos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsCursorPos) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RConsCursorPos) , "::" , stringify ! (y))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct input_state_t { pub readbuffer : * mut :: std :: os :: raw :: c_char , pub readbuffer_length : :: std :: os :: raw :: c_int , pub bufactive : bool , } # [test] fn bindgen_test_layout_input_state_t () { const UNINIT : :: std :: mem :: MaybeUninit < input_state_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < input_state_t > () , 16usize , concat ! ("Size of: " , stringify ! (input_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < input_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (input_state_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readbuffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (readbuffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readbuffer_length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (readbuffer_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bufactive) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (bufactive))) ; } impl Default for input_state_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type InputState = input_state_t ; # [repr (C)] # [repr (align (16))] # [derive (Copy , Clone)] pub struct r_cons_t { pub context : * mut RConsContext , pub ctx_stack : * mut RList , pub input_state : InputState , pub lastline : * mut :: std :: os :: raw :: c_char , pub lines : :: std :: os :: raw :: c_int , pub rows : :: std :: os :: raw :: c_int , pub echo : :: std :: os :: raw :: c_int , pub fps : :: std :: os :: raw :: c_int , pub columns : :: std :: os :: raw :: c_int , pub force_rows : :: std :: os :: raw :: c_int , pub force_columns : :: std :: os :: raw :: c_int , pub fix_rows : :: std :: os :: raw :: c_int , pub fix_columns : :: std :: os :: raw :: c_int , pub break_lines : bool , pub show_autocomplete_widget : bool , pub fdin : * mut FILE , pub fdout : :: std :: os :: raw :: c_int , pub teefile : * const :: std :: os :: raw :: c_char , pub user_fgets : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut r_cons_t , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub event_resize : RConsEvent , pub event_data : * mut :: std :: os :: raw :: c_void , pub mouse_event : bool , pub cb_editor : RConsEditorCallback , pub cb_break : RConsBreakCallback , pub cb_sleep_begin : RConsSleepBeginCallback , pub cb_sleep_end : RConsSleepEndCallback , pub cb_click : RConsClickCallback , pub cb_fkey : RConsFunctionKey , pub user : * mut :: std :: os :: raw :: c_void , pub term_raw : termios , pub term_buf : termios , pub num : * mut RNum , pub pager : * mut :: std :: os :: raw :: c_char , pub blankline : :: std :: os :: raw :: c_int , pub highlight : * mut :: std :: os :: raw :: c_char , pub enable_highlight : bool , pub null : :: std :: os :: raw :: c_int , pub mouse : :: std :: os :: raw :: c_int , pub is_wine : :: std :: os :: raw :: c_int , pub line : * mut r_line_t , pub vline : * mut * const :: std :: os :: raw :: c_char , pub vtmode : :: std :: os :: raw :: c_int , pub use_utf8 : bool , pub use_utf8_curvy : bool , pub dotted_lines : bool , pub linesleep : :: std :: os :: raw :: c_int , pub pagesize : :: std :: os :: raw :: c_int , pub maxpage : :: std :: os :: raw :: c_int , pub break_word : * mut :: std :: os :: raw :: c_char , pub break_word_len : :: std :: os :: raw :: c_int , pub timeout : u64 , pub otimeout : :: std :: os :: raw :: c_int , pub timeout_break : bool , pub timeout_warned : bool , pub rgbstr : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut r_cons_t , str_ : * mut :: std :: os :: raw :: c_char , sz : usize , addr : u64) -> * mut :: std :: os :: raw :: c_char > , pub click_set : bool , pub click_x : :: std :: os :: raw :: c_int , pub click_y : :: std :: os :: raw :: c_int , pub show_vals : bool , pub lock : * mut RThreadLock , pub cpos : RConsCursorPos , pub __bindgen_padding_0 : u64 , pub fds : RVecFdPairs , pub oldraw : :: std :: os :: raw :: c_int , pub prev : u64 , pub echodata : * mut RStrBuf , pub lasti : bool , } # [test] fn bindgen_test_layout_r_cons_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_t > () , 544usize , concat ! ("Size of: " , stringify ! (r_cons_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_cons_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . context) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctx_stack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (ctx_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_state) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (input_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastline) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lastline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rows) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echo) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (echo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fps) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columns) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_rows) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (force_rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_columns) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (force_columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fix_rows) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fix_rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fix_columns) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fix_columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_lines) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_autocomplete_widget) as usize - ptr as usize } , 77usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (show_autocomplete_widget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdin) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fdin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdout) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fdout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . teefile) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (teefile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_fgets) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (user_fgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_resize) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (event_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_data) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (event_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_event) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (mouse_event))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_editor) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_editor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_break) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_break))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_sleep_begin) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_sleep_begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_sleep_end) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_sleep_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_click) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_click))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_fkey) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_fkey))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . term_raw) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (term_raw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . term_buf) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (term_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pager) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (pager))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blankline) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (blankline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highlight) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_highlight) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (enable_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . null) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (null))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (mouse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_wine) as usize - ptr as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (is_wine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vline) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (vline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtmode) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (vtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_utf8) as usize - ptr as usize } , 380usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (use_utf8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_utf8_curvy) as usize - ptr as usize } , 381usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (use_utf8_curvy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dotted_lines) as usize - ptr as usize } , 382usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (dotted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linesleep) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (linesleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pagesize) as usize - ptr as usize } , 388usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxpage) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (maxpage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_word) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_word))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_word_len) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_word_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . otimeout) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (otimeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout_break) as usize - ptr as usize } , 428usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout_break))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout_warned) as usize - ptr as usize } , 429usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout_warned))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rgbstr) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (rgbstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_set) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_x) as usize - ptr as usize } , 444usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_y) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_vals) as usize - ptr as usize } , 452usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (show_vals))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpos) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldraw) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (oldraw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echodata) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (echodata))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lasti) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lasti))) ; } impl Default for r_cons_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCons = r_cons_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_canvas_line_style_t { pub color : :: std :: os :: raw :: c_int , pub symbol : :: std :: os :: raw :: c_int , pub dot_style : :: std :: os :: raw :: c_int , pub ansicolor : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cons_canvas_line_style_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_canvas_line_style_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_canvas_line_style_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_cons_canvas_line_style_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_canvas_line_style_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_canvas_line_style_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dot_style) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (dot_style))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ansicolor) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (ansicolor))) ; } impl Default for r_cons_canvas_line_style_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCanvasLineStyle = r_cons_canvas_line_style_t ; extern "C" { pub fn r_cons_image (buf : * const u8 , bufsz : :: std :: os :: raw :: c_int , width : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , components : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_new (cons : * mut RCons , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int) -> * mut RConsCanvas ; } extern "C" { pub fn r_cons_canvas_flags (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_canvas_free (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_clear (c : * mut RConsCanvas , flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_print (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_print_region (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_tostring (c : * mut RConsCanvas) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_canvas_attr (c : * mut RConsCanvas , attr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_write (c : * mut RConsCanvas , _s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_background (c : * mut RConsCanvas , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_gotoxy (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_canvas_write_at (c : * mut RConsCanvas , s : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_box (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_circle (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_line (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_line_diagonal (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_line_square (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_resize (c : * mut RConsCanvas , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_canvas_fill (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , ch : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_bgfill (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_line_square_defined (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle , bendpoint : :: std :: os :: raw :: c_int , isvert : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_line_back_edge (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle , ybendpoint1 : :: std :: os :: raw :: c_int , xbendpoint : :: std :: os :: raw :: c_int , ybendpoint2 : :: std :: os :: raw :: c_int , isvert : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_new () -> * mut RCons ; } extern "C" { pub fn r_cons_singleton () -> * mut RCons ; } extern "C" { pub fn r_cons_global (c : * mut RCons) -> * mut RCons ; } extern "C" { pub fn r_cons_get_size (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_themes () -> * const RConsTheme ; } extern "C" { pub fn r_cons_free (cons : * mut RCons) ; } extern "C" { pub fn r_cons_set_click (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_get_click (cons : * mut RCons , x : * mut :: std :: os :: raw :: c_int , y : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_mark (cons : * mut RCons , addr : u64 , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_mark_at (cons : * mut RCons , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> * mut RConsMark ; } extern "C" { pub fn r_cons_mark_flush (cons : * mut RCons) ; } pub type RConsBreak = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_cons_is_initialized () -> bool ; } extern "C" { pub fn r_cons_was_breaked (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_is_interactive (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_default_context_is_interactive () -> bool ; } extern "C" { pub fn r_cons_break_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_break_timeout (cons : * mut RCons , timeout : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_break_end (cons : * mut RCons) ; } extern "C" { pub fn r_cons_break (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pipe_open (cons : * mut RCons , file : * const :: std :: os :: raw :: c_char , fdn : :: std :: os :: raw :: c_int , append : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_pipe_close (cons : * mut RCons , fd : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pipe_close_all (cons : * mut RCons) ; } extern "C" { pub fn r_cons_sleep_begin (cons : * mut RCons) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_cons_sleep_end (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cons_clear_buffer (cons : * mut RCons) ; } extern "C" { pub fn r_cons_codecolors (cons : * mut RCons) -> RConsCodeColors ; } extern "C" { pub fn r_cons_context_pal_free (ctx : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_new (parent : * mut RConsContext) -> * mut RConsContext ; } extern "C" { pub fn r_cons_context_free (context : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_is_main (cons : * mut RCons , context : * mut RConsContext) -> bool ; } extern "C" { pub fn r_cons_context_break (context : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_break_push (cons : * mut RCons , context : * mut RConsContext , cb : RConsBreak , user : * mut :: std :: os :: raw :: c_void , sig : bool) ; } extern "C" { pub fn r_cons_context_break_pop (cons : * mut RCons , context : * mut RConsContext , sig : bool) ; } extern "C" { pub fn r_cons_editor (cons : * mut RCons , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_stdout_open (file : * const :: std :: os :: raw :: c_char , append : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_stdout_set_fd (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_get_cur_line () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_line (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , ch : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_swap_ground (col : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_set_raw (cons : * mut RCons , is_raw : bool) ; } extern "C" { pub fn r_cons_invert (cons : * mut RCons , set : :: std :: os :: raw :: c_int , color : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_gprintf (format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_print (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_print_at (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_print_justify (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , j : :: std :: os :: raw :: c_int , c : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_print_fps (cons : * mut RCons , col : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_less_str (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , exitkeys : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_less (cons : * mut RCons) ; } extern "C" { pub fn r_cons_2048 (cons : * mut RCons , color : bool) ; } extern "C" { pub fn r_cons_is_utf8 () -> bool ; } extern "C" { pub fn r_cons_is_windows () -> bool ; } extern "C" { pub fn r_cons_cmd_help (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char , use_color : bool) ; } extern "C" { pub fn r_cons_cmd_help_json (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_cmd_help_match (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char , use_color : bool , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char , exact : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_log_stub (output : * const :: std :: os :: raw :: c_char , funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : :: std :: os :: raw :: c_uint , level : :: std :: os :: raw :: c_uint , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_cons_filter (cons : * mut RCons) ; } extern "C" { pub fn r_cons_controlz (cons : * mut RCons , ch : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_readchar (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_readpush (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_readflush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_switchbuf (cons : * mut RCons , active : bool) ; } extern "C" { pub fn r_cons_readchar_timeout (cons : * mut RCons , usec : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_any_key (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_thready () ; } extern "C" { pub fn r_cons_palette_init (pal : * const :: std :: os :: raw :: c_uchar) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_pal_set (cons : * mut RCons , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cons_pal_reload (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_init (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_copy (cons : * mut RCons , src : * mut RConsContext) ; } extern "C" { pub fn r_cons_pal_parse (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , outcol : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_random (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_get (cons : * mut RCons , key : * const :: std :: os :: raw :: c_char) -> RColor ; } extern "C" { pub fn r_cons_pal_get_i (cons : * mut RCons , index : :: std :: os :: raw :: c_int) -> RColor ; } extern "C" { pub fn r_cons_pal_get_name (cons : * mut RCons , index : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_len () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_rgb_tostring (r : u8 , g : u8 , b : u8) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_list (cons : * mut RCons , rad : :: std :: os :: raw :: c_int , arg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_pal_show (cons : * mut RCons) ; } extern "C" { pub fn r_cons_is_tty () -> bool ; } extern "C" { pub fn r_cons_arrow_to_hjkl (cons : * mut RCons , ch : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_html_filter (ptr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rainbow_get (cons : * mut RCons , idx : :: std :: os :: raw :: c_int , last : :: std :: os :: raw :: c_int , bg : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rainbow_free (ctx : * mut RCons) ; } extern "C" { pub fn r_cons_context_rainbow_free (ctx : * mut RConsContext) ; } extern "C" { pub fn r_cons_rainbow_new (ctx : * mut RCons , sz : usize) ; } extern "C" { pub fn r_cons_fgets (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_hud (cons : * mut RCons , list : * mut RList , prompt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_line_string (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_path (cons : * mut RCons , path : * const :: std :: os :: raw :: c_char , dir : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_string (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_file (cons : * mut RCons , f : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_grep_help (cons : * mut RCons) ; } extern "C" { pub fn r_cons_grep_expression (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grep_parsecmd (cons : * mut RCons , cmd : * mut :: std :: os :: raw :: c_char , quotestr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grep_strip (cmd : * mut :: std :: os :: raw :: c_char , quotestr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_grep_line (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_rgb (r : u8 , g : u8 , b : u8 , a : u8) ; } extern "C" { pub fn r_cons_rgb_fgbg (r : u8 , g : u8 , b : u8 , R : u8 , G : u8 , B : u8) ; } extern "C" { pub fn r_cons_rgb_str_mode (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , rcolor : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rgb_str (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , rcolor : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rgb_str_off (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , off : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_color (fg : :: std :: os :: raw :: c_int , r : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_color_random (cons : * mut RCons , alpha : u8) -> RColor ; } extern "C" { pub fn r_cons_yesno (cons : * mut RCons , def : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_cons_input (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_password (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_set_cup (enable : bool) -> bool ; } extern "C" { pub fn r_cons_message (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_enable_mouse (cons : * mut RCons , enable : bool) -> bool ; } extern "C" { pub fn r_cons_enable_highlight (cons : * mut RCons , enable : bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RConsPixel { pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub buf_size : usize , } # [test] fn bindgen_test_layout_RConsPixel () { const UNINIT : :: std :: mem :: MaybeUninit < RConsPixel > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsPixel > () , 24usize , concat ! ("Size of: " , stringify ! (RConsPixel))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsPixel > () , 8usize , concat ! ("Alignment of " , stringify ! (RConsPixel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (buf_size))) ; } impl Default for RConsPixel { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_cons_pixel_new (w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut RConsPixel ; } extern "C" { pub fn r_cons_pixel_free (p : * mut RConsPixel) ; } extern "C" { pub fn r_cons_pixel_flush (cons : * mut RCons , p : * mut RConsPixel , sx : :: std :: os :: raw :: c_int , sy : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pixel_drain (p : * mut RConsPixel) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pixel_get (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> u8 ; } extern "C" { pub fn r_cons_pixel_set (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , v : u8) ; } extern "C" { pub fn r_cons_pixel_sets (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_pixel_fill (p : * mut RConsPixel , _x : :: std :: os :: raw :: c_int , _y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , v : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pixel_tostring (p : * mut RConsPixel) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_selection_widget_t { pub options : * mut * const :: std :: os :: raw :: c_char , pub options_len : :: std :: os :: raw :: c_int , pub selection : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub scroll : :: std :: os :: raw :: c_int , pub complete_common : bool , pub direction : bool , } # [test] fn bindgen_test_layout_r_selection_widget_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_selection_widget_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_selection_widget_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_selection_widget_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_selection_widget_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_selection_widget_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (options_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selection) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (selection))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scroll) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (scroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . complete_common) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (complete_common))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (direction))) ; } impl Default for r_selection_widget_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSelWidget = r_selection_widget_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_hist_t { pub data : * mut * mut :: std :: os :: raw :: c_char , pub match_ : * mut :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , pub index : :: std :: os :: raw :: c_int , pub top : :: std :: os :: raw :: c_int , pub autosave : :: std :: os :: raw :: c_int , pub do_setup_match : bool , pub load_index : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_hist_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_hist_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_hist_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_line_hist_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_hist_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_hist_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . match_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (match_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (top))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autosave) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (autosave))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . do_setup_match) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (do_setup_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load_index) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (load_index))) ; } impl Default for r_line_hist_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineHistory = r_line_hist_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_buffer_t { pub data : [:: std :: os :: raw :: c_char ; 4096usize] , pub index : :: std :: os :: raw :: c_int , pub length : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_buffer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_buffer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_buffer_t > () , 4104usize , concat ! ("Size of: " , stringify ! (r_line_buffer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_buffer_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_line_buffer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (length))) ; } impl Default for r_line_buffer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineBuffer = r_line_buffer_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_hud_t { pub current_entry_n : :: std :: os :: raw :: c_int , pub top_entry_n : :: std :: os :: raw :: c_int , pub activate : :: std :: os :: raw :: c_char , pub vi : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_hud_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hud_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hud_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_hud_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hud_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_hud_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_entry_n) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (current_entry_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top_entry_n) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (top_entry_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . activate) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (activate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vi) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (vi))) ; } pub type RLineHud = r_hud_t ; pub type RLine = r_line_t ; pub type RLineCompletion = r_line_comp_t ; pub const RLinePromptType_R_LINE_PROMPT_DEFAULT : RLinePromptType = 0 ; pub const RLinePromptType_R_LINE_PROMPT_OFFSET : RLinePromptType = 1 ; pub const RLinePromptType_R_LINE_PROMPT_FILE : RLinePromptType = 2 ; pub type RLinePromptType = :: std :: os :: raw :: c_uint ; pub type RLineCompletionCb = :: std :: option :: Option < unsafe extern "C" fn (completion : * mut RLineCompletion , buf : * mut RLineBuffer , prompt_type : RLinePromptType , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_comp_t { pub opt : bool , pub args_limit : usize , pub quit : bool , pub args : RPVector , pub run : RLineCompletionCb , pub run_user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_line_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_comp_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_line_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args_limit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (args_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quit) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (quit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_user) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (run_user))) ; } impl Default for r_line_comp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineHistoryUpCb = :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine) -> :: std :: os :: raw :: c_int > ; pub type RLineHistoryDownCb = :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_t { pub cons : * mut r_cons_t , pub completion : RLineCompletion , pub buffer : RLineBuffer , pub history : RLineHistory , pub sel_widget : * mut RSelWidget , pub cb_history_up : RLineHistoryUpCb , pub cb_history_down : RLineHistoryDownCb , pub cb_fkey : RConsFunctionKey , pub echo : bool , pub prompt : * mut :: std :: os :: raw :: c_char , pub kill_ring : * mut RList , pub kill_ring_ptr : :: std :: os :: raw :: c_int , pub clipboard : * mut :: std :: os :: raw :: c_char , pub disable : bool , pub user : * mut :: std :: os :: raw :: c_void , pub histfilter : bool , pub hist_up : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub hist_down : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub contents : * mut :: std :: os :: raw :: c_char , pub zerosep : bool , pub enable_vi_mode : bool , pub vi_mode : :: std :: os :: raw :: c_int , pub prompt_mode : bool , pub prompt_type : RLinePromptType , pub offset_hist_index : :: std :: os :: raw :: c_int , pub file_hist_index : :: std :: os :: raw :: c_int , pub hud : * mut RLineHud , pub sdbshell_hist : * mut RList , pub sdbshell_hist_iter : * mut RListIter , pub maxlength : :: std :: os :: raw :: c_int , pub vtmode : :: std :: os :: raw :: c_int , pub demo : bool , pub hist_size : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_t > () , 4424usize , concat ! ("Size of: " , stringify ! (r_line_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . completion) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (completion))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . history) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (history))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sel_widget) as usize - ptr as usize } , 4240usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sel_widget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_history_up) as usize - ptr as usize } , 4248usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_history_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_history_down) as usize - ptr as usize } , 4256usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_history_down))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_fkey) as usize - ptr as usize } , 4264usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_fkey))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echo) as usize - ptr as usize } , 4272usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (echo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 4280usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_ring) as usize - ptr as usize } , 4288usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (kill_ring))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_ring_ptr) as usize - ptr as usize } , 4296usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (kill_ring_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clipboard) as usize - ptr as usize } , 4304usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (clipboard))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disable) as usize - ptr as usize } , 4312usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (disable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 4320usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . histfilter) as usize - ptr as usize } , 4328usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (histfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_up) as usize - ptr as usize } , 4336usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_down) as usize - ptr as usize } , 4344usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_down))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contents) as usize - ptr as usize } , 4352usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (contents))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zerosep) as usize - ptr as usize } , 4360usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (zerosep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_vi_mode) as usize - ptr as usize } , 4361usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (enable_vi_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vi_mode) as usize - ptr as usize } , 4364usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (vi_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_mode) as usize - ptr as usize } , 4368usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_type) as usize - ptr as usize } , 4372usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset_hist_index) as usize - ptr as usize } , 4376usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (offset_hist_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_hist_index) as usize - ptr as usize } , 4380usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (file_hist_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hud) as usize - ptr as usize } , 4384usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdbshell_hist) as usize - ptr as usize } , 4392usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sdbshell_hist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdbshell_hist_iter) as usize - ptr as usize } , 4400usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sdbshell_hist_iter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxlength) as usize - ptr as usize } , 4408usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (maxlength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtmode) as usize - ptr as usize } , 4412usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (vtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demo) as usize - ptr as usize } , 4416usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (demo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_size) as usize - ptr as usize } , 4420usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_size))) ; } impl Default for r_line_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_line_new (cons : * mut RCons) -> * mut RLine ; } extern "C" { pub fn r_line_dietline_init (line : * mut RLine) -> bool ; } extern "C" { pub fn r_line_free (line : * mut RLine) ; } extern "C" { pub fn r_line_get_prompt (line : * mut RLine) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_set_prompt (line : * mut RLine , prompt : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_clipboard_push (line : * mut RLine , str_ : * const :: std :: os :: raw :: c_char) ; } pub type RLineReadCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void , line : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_line_readline (cons : * mut RCons) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_readline_cb (cons : * mut RCons , cb : RLineReadCallback , user : * mut :: std :: os :: raw :: c_void) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_hist_free (line : * mut RLine) ; } extern "C" { pub fn r_line_hist_load (line : * mut RLine , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_add (line : * mut RLine , text : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_save (line : * mut RLine , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_label (line : * mut RLine , label : * const :: std :: os :: raw :: c_char , cb : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * const :: std :: os :: raw :: c_char) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_label_show (line : * mut RLine) ; } extern "C" { pub fn r_line_hist_list (line : * mut RLine , full : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_get_size (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_set_size (line : * mut RLine , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_line_hist_get (line : * mut RLine , n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_set_hist_callback (line : * mut RLine , cb_up : RLineHistoryUpCb , cb_down : RLineHistoryDownCb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_cmd_up (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_cmd_down (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_completion_init (completion : * mut RLineCompletion , args_limit : usize) ; } extern "C" { pub fn r_line_completion_push (completion : * mut RLineCompletion , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_completion_set (completion : * mut RLineCompletion , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_completion_clear (completion : * mut RLineCompletion) ; } extern "C" { pub fn r_cons_grep (cons : * mut RCons , grep : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grepbuf (cons : * mut RCons) ; } extern "C" { pub fn r_cons_println (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_newline (cons : * mut RCons) ; } extern "C" { pub fn r_cons_write (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_memset (cons : * mut RCons , ch : :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_printf_list (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) ; } extern "C" { pub fn r_cons_printf (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_gotoxy (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_interactive (cons : * mut RCons , x : bool) ; } extern "C" { pub fn r_cons_set_last_interactive (cons : * mut RCons) ; } extern "C" { pub fn r_cons_flush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_last (cons : * mut RCons) ; } extern "C" { pub fn r_cons_new2 () -> * mut RCons ; } extern "C" { pub fn r_cons_pop (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_free2 (cons : * mut RCons) ; } extern "C" { pub fn r_cons_print_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_fill_line (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear_line (cons : * mut RCons , std_err : bool , flush : bool) ; } extern "C" { pub fn r_cons_reset_colors (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear00 (cons : * mut RCons) ; } extern "C" { pub fn r_cons_reset (cons : * mut RCons) ; } extern "C" { pub fn r_cons_get_buffer (cons : * mut RCons , buffer_len : * mut usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_push (cons : * mut RCons) ; } extern "C" { pub fn r_cons_context_clone (ctx : * mut RConsContext) -> * mut RConsContext ; } extern "C" { pub fn r_cons_echo (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_drain (cons : * mut RCons) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_visual_flush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_visual_write (cons : * mut RCons , buffer : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_get_column (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_get_cursor (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_show_cursor (cons : * mut RCons , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_utf8 (cons : * mut RCons , b : bool) ; } extern "C" { pub fn r_cons_column (cons : * mut RCons , c : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_title (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_zero (cons : * mut RCons) ; } extern "C" { pub fn r_cons_highlight (cons : * mut RCons , word : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_lastline (cons : * mut RCons , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_lastline_utf8_ansi_len (cons : * mut RCons , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_drop (cons : * mut RCons , n : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_trim (cons : * mut RCons) ; } extern "C" { pub fn r_cons_breakword (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_is_breaked (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_break_push (cons : * mut RCons , cb : RConsBreak , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cons_break_pop (cons : * mut RCons) ; } pub type RConsGetSize = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsGetCursor = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsIsBreaked = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) -> bool > ; pub type RConsFlush = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) > ; pub type RConsPrintfCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RConsWriteCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , data : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsGrepCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , grep : * const :: std :: os :: raw :: c_char) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_bind_t { pub get_size : RConsGetSize , pub get_cursor : RConsGetCursor , pub cb_printf : RConsPrintfCallback , pub cb_write : RConsWriteCallback , pub is_breaked : RConsIsBreaked , pub cb_flush : RConsFlush , pub cb_grep : RConsGrepCallback , pub cons : * mut r_cons_t , } # [test] fn bindgen_test_layout_r_cons_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_bind_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_cons_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (get_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_cursor) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (get_cursor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_breaked) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (is_breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_flush) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_flush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_grep) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_grep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cons))) ; } impl Default for r_cons_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsBind = r_cons_bind_t ; extern "C" { pub fn r_cons_bind (cons : * mut RCons , bind : * mut RConsBind) ; } pub type RPanelsMenuCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_menu_item { pub n_sub : :: std :: os :: raw :: c_int , pub selectedIndex : :: std :: os :: raw :: c_int , pub name : * mut :: std :: os :: raw :: c_char , pub sub : * mut * mut r_panels_menu_item , pub cb : RPanelsMenuCallback , pub p : * mut RPanel , } # [test] fn bindgen_test_layout_r_panels_menu_item () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_menu_item > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_menu_item > () , 40usize , concat ! ("Size of: " , stringify ! (r_panels_menu_item))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_menu_item > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_menu_item))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_sub) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (n_sub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selectedIndex) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (selectedIndex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sub) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (sub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (p))) ; } impl Default for r_panels_menu_item { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsMenuItem = r_panels_menu_item ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_menu_t { pub root : * mut RPanelsMenuItem , pub history : * mut * mut RPanelsMenuItem , pub depth : :: std :: os :: raw :: c_int , pub n_refresh : :: std :: os :: raw :: c_int , pub refreshPanels : * mut * mut RPanel , } # [test] fn bindgen_test_layout_r_panels_menu_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_menu_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_menu_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_panels_menu_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_menu_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_menu_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . history) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (history))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_refresh) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (n_refresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refreshPanels) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (refreshPanels))) ; } impl Default for r_panels_menu_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsMenu = r_panels_menu_t ; pub const RPanelsMode_PANEL_MODE_DEFAULT : RPanelsMode = 0 ; pub const RPanelsMode_PANEL_MODE_MENU : RPanelsMode = 1 ; pub const RPanelsMode_PANEL_MODE_ZOOM : RPanelsMode = 2 ; pub const RPanelsMode_PANEL_MODE_WINDOW : RPanelsMode = 3 ; pub const RPanelsMode_PANEL_MODE_HELP : RPanelsMode = 4 ; pub type RPanelsMode = :: std :: os :: raw :: c_uint ; pub const RPanelsFun_PANEL_FUN_SNOW : RPanelsFun = 0 ; pub const RPanelsFun_PANEL_FUN_SAKURA : RPanelsFun = 1 ; pub const RPanelsFun_PANEL_FUN_NOFUN : RPanelsFun = 2 ; pub type RPanelsFun = :: std :: os :: raw :: c_uint ; pub const RPanelsLayout_PANEL_LAYOUT_DEFAULT_STATIC : RPanelsLayout = 0 ; pub const RPanelsLayout_PANEL_LAYOUT_DEFAULT_DYNAMIC : RPanelsLayout = 1 ; pub type RPanelsLayout = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_t { pub can : * mut RConsCanvas , pub panel : * mut * mut RPanel , pub n_panels : :: std :: os :: raw :: c_int , pub columnWidth : :: std :: os :: raw :: c_int , pub curnode : :: std :: os :: raw :: c_int , pub mouse_orig_x : :: std :: os :: raw :: c_int , pub mouse_orig_y : :: std :: os :: raw :: c_int , pub autoUpdate : bool , pub mouse_on_edge_x : bool , pub mouse_on_edge_y : bool , pub panels_menu : * mut RPanelsMenu , pub db : * mut Sdb , pub rotate_db : * mut Sdb , pub modal_db : * mut Sdb , pub mht : * mut [u64 ; 11usize] , pub mode : RPanelsMode , pub fun : RPanelsFun , pub prevMode : RPanelsMode , pub layout : RPanelsLayout , pub snows : * mut RList , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_panels_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_panels_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . can) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (can))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panel) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (panel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_panels) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (n_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columnWidth) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (columnWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curnode) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (curnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_orig_x) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_orig_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_orig_y) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_orig_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autoUpdate) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (autoUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_on_edge_x) as usize - ptr as usize } , 37usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_on_edge_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_on_edge_y) as usize - ptr as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_on_edge_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels_menu) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (panels_menu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotate_db) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (rotate_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . modal_db) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (modal_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mht) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fun) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prevMode) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (prevMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layout) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snows) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (snows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (name))) ; } impl Default for r_panels_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanels = r_panels_t ; pub const RPanelsRootState_DEFAULT : RPanelsRootState = 0 ; pub const RPanelsRootState_ROTATE : RPanelsRootState = 1 ; pub const RPanelsRootState_DEL : RPanelsRootState = 2 ; pub const RPanelsRootState_QUIT : RPanelsRootState = 3 ; pub type RPanelsRootState = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_root_t { pub n_panels : :: std :: os :: raw :: c_int , pub cur_panels : :: std :: os :: raw :: c_int , pub pdc_caches : * mut Sdb , pub cur_pdc_cache : * mut Sdb , pub panels : * mut * mut RPanels , pub root_state : RPanelsRootState , } # [test] fn bindgen_test_layout_r_panels_root_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_root_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_root_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_panels_root_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_root_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_root_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_panels) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (n_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_panels) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (cur_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdc_caches) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (pdc_caches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_pdc_cache) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (cur_pdc_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root_state) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (root_state))) ; } impl Default for r_panels_root_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsRoot = r_panels_root_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diff_op_t { pub a_off : u64 , pub a_buf : * const u8 , pub a_len : u32 , pub b_off : u64 , pub b_buf : * const u8 , pub b_len : u32 , } # [test] fn bindgen_test_layout_r_diff_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diff_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diff_op_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_diff_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diff_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diff_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_off) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_off) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_buf) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_len) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_len))) ; } impl Default for r_diff_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiffOp = r_diff_op_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diff_t { pub off_a : u64 , pub off_b : u64 , pub delta : :: std :: os :: raw :: c_int , pub user : * mut :: std :: os :: raw :: c_void , pub verbose : bool , pub type_ : :: std :: os :: raw :: c_int , pub diff_cmd : * mut :: std :: os :: raw :: c_char , pub callback : :: std :: option :: Option < unsafe extern "C" fn (diff : * mut r_diff_t , user : * mut :: std :: os :: raw :: c_void , op : * mut RDiffOp) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diff_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off_a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (off_a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off_b) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (off_b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_cmd) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (diff_cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (callback))) ; } impl Default for r_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiff = r_diff_t ; pub const RLevOp_LEVEND : RLevOp = 0 ; pub const RLevOp_LEVNOP : RLevOp = 1 ; pub const RLevOp_LEVSUB : RLevOp = 2 ; pub const RLevOp_LEVADD : RLevOp = 3 ; pub const RLevOp_LEVDEL : RLevOp = 4 ; pub type RLevOp = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lev_buf { pub buf : * mut :: std :: os :: raw :: c_void , pub len : u32 , } # [test] fn bindgen_test_layout_r_lev_buf () { const UNINIT : :: std :: mem :: MaybeUninit < r_lev_buf > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lev_buf > () , 16usize , concat ! ("Size of: " , stringify ! (r_lev_buf))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lev_buf > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lev_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lev_buf) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lev_buf) , "::" , stringify ! (len))) ; } impl Default for r_lev_buf { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLevBuf = r_lev_buf ; pub type RLevMatches = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RLevBuf , b : * mut RLevBuf , ia : u32 , ib : u32) -> bool > ; pub type RDiffCallback = :: std :: option :: Option < unsafe extern "C" fn (diff : * mut RDiff , user : * mut :: std :: os :: raw :: c_void , op : * mut RDiffOp) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diffchar_t { pub align_a : * const u8 , pub align_b : * const u8 , pub len_buf : usize , pub start_align : usize , } # [test] fn bindgen_test_layout_r_diffchar_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diffchar_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diffchar_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_diffchar_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diffchar_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diffchar_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align_a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (align_a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align_b) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (align_b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len_buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (len_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start_align) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (start_align))) ; } impl Default for r_diffchar_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiffChar = r_diffchar_t ; extern "C" { pub fn r_diff_new () -> * mut RDiff ; } extern "C" { pub fn r_diff_new_from (off_a : u64 , off_b : u64) -> * mut RDiff ; } extern "C" { pub fn r_diff_free (d : * mut RDiff) ; } extern "C" { pub fn r_diff_buffers (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_static (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_radiff (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_delta (diff : * mut RDiff , sa : * const u8 , la : :: std :: os :: raw :: c_int , sb : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_tostring (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_diff_set_callback (d : * mut RDiff , callback : RDiffCallback , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_distance (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_distance_myers (diff : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_distance_levenshtein (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_unified (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_diff_lines (file1 : * const :: std :: os :: raw :: c_char , sa : * const :: std :: os :: raw :: c_char , la : :: std :: os :: raw :: c_int , file2 : * const :: std :: os :: raw :: c_char , sb : * const :: std :: os :: raw :: c_char , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_set_delta (d : * mut RDiff , delta : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_gdiff (file1 : * const :: std :: os :: raw :: c_char , file2 : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int , va : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diffchar_new (a : * const u8 , b : * const u8) -> * mut RDiffChar ; } extern "C" { pub fn r_diffchar_print (diffchar : * mut RDiffChar) ; } extern "C" { pub fn r_diffchar_free (diffchar : * mut RDiffChar) ; } extern "C" { pub fn r_diff_levenshtein_path (bufa : * mut RLevBuf , bufb : * mut RLevBuf , maxdst : u32 , levdiff : RLevMatches , chgs : * mut * mut RLevOp) -> i32 ; } extern "C" { pub fn r_punycode_encode (src : * const u8 , srclen : :: std :: os :: raw :: c_int , dstlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_punycode_decode (src : * const :: std :: os :: raw :: c_char , srclen : :: std :: os :: raw :: c_int , dstlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_queue_t { pub elems : * mut * mut :: std :: os :: raw :: c_void , pub capacity : :: std :: os :: raw :: c_uint , pub front : :: std :: os :: raw :: c_uint , pub rear : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_r_queue_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_queue_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_queue_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_queue_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_queue_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_queue_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elems) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . front) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (front))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rear) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (rear))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (size))) ; } impl Default for r_queue_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RQueue = r_queue_t ; extern "C" { pub fn r_queue_new (n : :: std :: os :: raw :: c_int) -> * mut RQueue ; } extern "C" { pub fn r_queue_free (q : * mut RQueue) ; } extern "C" { pub fn r_queue_enqueue (q : * mut RQueue , el : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_queue_dequeue (q : * mut RQueue) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_queue_is_empty (q : * mut RQueue) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_range_item_t { pub fr : u64 , pub to : u64 , pub data : * mut u8 , pub datalen : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_range_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_range_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_range_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_range_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_range_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_range_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (fr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datalen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (datalen))) ; } impl Default for r_range_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRangeItem = r_range_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_range_t { pub count : :: std :: os :: raw :: c_int , pub changed : :: std :: os :: raw :: c_int , pub ranges : * mut RList , } # [test] fn bindgen_test_layout_r_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_range_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . changed) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (changed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ranges) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (ranges))) ; } impl Default for r_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRange = r_range_t ; extern "C" { pub fn r_range_new () -> * mut RRange ; } extern "C" { pub fn r_range_new_from_string (string : * const :: std :: os :: raw :: c_char) -> * mut RRange ; } extern "C" { pub fn r_range_free (r : * mut RRange) -> * mut RRange ; } extern "C" { pub fn r_range_item_get (r : * mut RRange , addr : u64) -> * mut RRangeItem ; } extern "C" { pub fn r_range_size (r : * mut RRange) -> u64 ; } extern "C" { pub fn r_range_add_from_string (rgs : * mut RRange , string : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_add (rgs : * mut RRange , from : u64 , to : u64 , rw : :: std :: os :: raw :: c_int) -> * mut RRangeItem ; } extern "C" { pub fn r_range_sub (rgs : * mut RRange , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_merge (rgs : * mut RRange , r : * mut RRange) ; } extern "C" { pub fn r_range_contains (rgs : * mut RRange , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_sort (rgs : * mut RRange) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_percent (rgs : * mut RRange) ; } extern "C" { pub fn r_range_list (rgs : * mut RRange , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_get_n (rgs : * mut RRange , n : :: std :: os :: raw :: c_int , from : * mut u64 , to : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_tostring (rgs : * mut RRange) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_range_inverse (rgs : * mut RRange , from : u64 , to : u64 , flags : :: std :: os :: raw :: c_int) -> * mut RRange ; } extern "C" { pub fn r_range_overlap (a0 : u64 , a1 : u64 , b0 : u64 , b1 : u64 , d : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_space_t { pub name : * mut :: std :: os :: raw :: c_char , pub prefixes : * mut RList , } # [test] fn bindgen_test_layout_r_space_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_space_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_space_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_space_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_space_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_space_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_space_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefixes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_space_t) , "::" , stringify ! (prefixes))) ; } impl Default for r_space_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSpace = r_space_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_spaces_t { pub name : * const :: std :: os :: raw :: c_char , pub current : * mut RSpace , pub spaces : * mut RRBTree , pub spacestack : * mut RList , pub event : * mut REvent , } # [test] fn bindgen_test_layout_r_spaces_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_spaces_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_spaces_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_spaces_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_spaces_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_spaces_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spaces) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spacestack) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (spacestack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (event))) ; } impl Default for r_spaces_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSpaces = r_spaces_t ; extern "C" { pub fn r_spaces_new (name : * const :: std :: os :: raw :: c_char) -> * mut RSpaces ; } extern "C" { pub fn r_spaces_init (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_fini (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_free (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_purge (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_get (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_add (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_set (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_unset (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_rename (sp : * mut RSpaces , oname : * const :: std :: os :: raw :: c_char , nname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_count (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_spaces_push (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_pop (sp : * mut RSpaces) -> bool ; } pub type RBloomHashFunc = :: std :: option :: Option < unsafe extern "C" fn (data : * const :: std :: os :: raw :: c_void , len : usize , seed : u32) -> u32 > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bloom_t { _unused : [u8 ; 0] , } pub type RBloom = r_bloom_t ; extern "C" { pub fn r_bloom_new (m : usize , k : usize , hash_funcs : * mut RBloomHashFunc) -> * mut RBloom ; } extern "C" { pub fn r_bloom_free (bf : * mut RBloom) ; } extern "C" { pub fn r_bloom_init (bf : * mut RBloom , m : usize , k : usize , hash_funcs : * mut RBloomHashFunc) -> bool ; } extern "C" { pub fn r_bloom_fini (bf : * mut RBloom) ; } extern "C" { pub fn r_bloom_add (bf : * mut RBloom , data : * const :: std :: os :: raw :: c_void , len : usize) -> bool ; } extern "C" { pub fn r_bloom_check (bf : * mut RBloom , data : * const :: std :: os :: raw :: c_void , len : usize) -> bool ; } extern "C" { pub fn r_bloom_reset (bf : * mut RBloom) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RStrpool { pub str_ : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , # [doc = "  // /////////////////////////"] pub count : :: std :: os :: raw :: c_int , pub isize_ : :: std :: os :: raw :: c_int , pub idxs : * mut u32 , pub sidx : * mut u32 , pub bloom : * mut RBloom , } # [test] fn bindgen_test_layout_RStrpool () { const UNINIT : :: std :: mem :: MaybeUninit < RStrpool > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStrpool > () , 48usize , concat ! ("Size of: " , stringify ! (RStrpool))) ; assert_eq ! (:: std :: mem :: align_of :: < RStrpool > () , 8usize , concat ! ("Alignment of " , stringify ! (RStrpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isize_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (isize_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idxs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (idxs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sidx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (sidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bloom) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (bloom))) ; } impl Default for RStrpool { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_strpool_new () -> * mut RStrpool ; } extern "C" { pub fn r_strpool_free (p : * mut RStrpool) ; } extern "C" { pub fn r_strpool_empty (p : * mut RStrpool) ; } extern "C" { pub fn r_strpool_add (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_append (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_get (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_get_at (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strpool_get_nth (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strpool_slice (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_strpool_slice_range (p : * mut RStrpool , idx_from : :: std :: os :: raw :: c_int , idx_to : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_node_t { pub parent : * mut r_tree_node_t , pub tree : * mut r_tree_t , pub children : * mut RList , pub n_children : :: std :: os :: raw :: c_uint , pub depth : :: std :: os :: raw :: c_int , pub free : RListFree , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tree_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_node_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_tree_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . children) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_children) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (n_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (data))) ; } impl Default for r_tree_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTreeNode = r_tree_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_t { pub root : * mut RTreeNode , } # [test] fn bindgen_test_layout_r_tree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_tree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_t) , "::" , stringify ! (root))) ; } impl Default for r_tree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTree = r_tree_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_visitor_t { pub pre_visit : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub post_visit : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub discover_child : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub data : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tree_visitor_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_visitor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_visitor_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_tree_visitor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_visitor_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_visitor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pre_visit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (pre_visit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . post_visit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (post_visit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discover_child) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (discover_child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (user))) ; } impl Default for r_tree_visitor_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTreeVisitor = r_tree_visitor_t ; extern "C" { pub fn r_tree_new () -> * mut RTree ; } extern "C" { pub fn r_tree_add_node (t : * mut RTree , node : * mut RTreeNode , child_data : * mut :: std :: os :: raw :: c_void) -> * mut RTreeNode ; } extern "C" { pub fn r_tree_reset (t : * mut RTree) ; } extern "C" { pub fn r_tree_free (t : * mut RTree) ; } extern "C" { pub fn r_tree_dfs (t : * mut RTree , vis : * mut RTreeVisitor) ; } extern "C" { pub fn r_tree_bfs (t : * mut RTree , vis : * mut RTreeVisitor) ; } extern "C" { pub fn r_uleb128 (data : * const u8 , datalen : :: std :: os :: raw :: c_int , v : * mut u64 , error : * mut * const :: std :: os :: raw :: c_char) -> * const u8 ; } extern "C" { pub fn r_uleb128_decode (data : * const u8 , datalen : * mut :: std :: os :: raw :: c_int , v : * mut u64) -> * const u8 ; } extern "C" { pub fn r_uleb128_len (data : * const u8 , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_uleb128_encode (s : u64 , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_leb128 (data : * const u8 , datalen : :: std :: os :: raw :: c_int , v : * mut i64) -> * const u8 ; } extern "C" { pub fn r_sleb128 (data : * mut * const u8 , end : * const u8) -> i64 ; } pub type RRune = u32 ; extern "C" { pub fn r_utf8_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_encode_str (str_ : * const RRune , dst : * mut u8 , dst_length : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_size (ptr : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_strlen (str_ : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_display_width (str_ : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_isprint (c : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16_to_utf8_l (wc : * const wchar_t , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_utf_block_name (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_utf8_to_utf16_l (cstring : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut wchar_t ; } extern "C" { pub fn r_utf_block_idx (ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf_block_list (str_ : * const u8 , len : :: std :: os :: raw :: c_int , freq_list : * mut * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf_bom_encoding (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int) -> RStrEnc ; } extern "C" { pub fn r_utf16_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune , bigendian : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16le_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16be_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16le_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16be_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf32_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune , bigendian : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf32le_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_id_pool_t { pub start_id : u32 , pub last_id : u32 , pub next_id : u32 , pub freed_ids : * mut RQueue , } # [test] fn bindgen_test_layout_r_id_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_id_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_id_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_id_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_id_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_id_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start_id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (start_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_id) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (last_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_id) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (next_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . freed_ids) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (freed_ids))) ; } impl Default for r_id_pool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIDPool = r_id_pool_t ; extern "C" { pub fn r_id_pool_new (start_id : u32 , last_id : u32) -> * mut RIDPool ; } extern "C" { pub fn r_id_pool_grab_id (pool : * mut RIDPool , grabber : * mut u32) -> bool ; } extern "C" { pub fn r_id_pool_kick_id (pool : * mut RIDPool , kick : u32) -> bool ; } extern "C" { pub fn r_id_pool_free (pool : * mut RIDPool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_id_storage_t { pub pool : * mut RIDPool , pub data : * mut * mut :: std :: os :: raw :: c_void , pub top_id : u32 , pub size : u32 , } # [test] fn bindgen_test_layout_r_id_storage_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_id_storage_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_id_storage_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_id_storage_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_id_storage_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_id_storage_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top_id) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (top_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (size))) ; } impl Default for r_id_storage_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIDStorage = r_id_storage_t ; pub type RIDStorageForeachCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , id : u32) -> bool > ; pub type ROIDStorageCompareCb = :: std :: option :: Option < unsafe extern "C" fn (in_ : * mut :: std :: os :: raw :: c_void , incoming : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void , cmp_res : * mut :: std :: os :: raw :: c_int) -> bool > ; extern "C" { pub fn r_id_storage_init (storage : * mut RIDStorage , start_id : u32 , last_id : u32) -> bool ; } extern "C" { pub fn r_id_storage_new (start_id : u32 , last_id : u32) -> * mut RIDStorage ; } extern "C" { pub fn r_id_storage_set (storage : * mut RIDStorage , data : * mut :: std :: os :: raw :: c_void , id : u32) -> bool ; } extern "C" { pub fn r_id_storage_add (storage : * mut RIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get (storage : * mut RIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_id_storage_get_next (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get_prev (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_delete (storage : * mut RIDStorage , id : u32) ; } extern "C" { pub fn r_id_storage_take (storage : * mut RIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_id_storage_foreach (storage : * mut RIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_id_storage_fini (storage : * mut RIDStorage) ; } extern "C" { pub fn r_id_storage_free (storage : * mut RIDStorage) ; } extern "C" { pub fn r_id_storage_list (s : * mut RIDStorage) -> * mut RList ; } extern "C" { pub fn r_id_storage_get_lowest (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get_highest (storage : * mut RIDStorage , id : * mut u32) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ordered_id_storage_t { pub permutation : * mut u32 , pub psize : u32 , pub ptop : u32 , pub data : * mut RIDStorage , pub cmp : ROIDStorageCompareCb , } # [test] fn bindgen_test_layout_r_ordered_id_storage_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ordered_id_storage_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ordered_id_storage_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_ordered_id_storage_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ordered_id_storage_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ordered_id_storage_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . permutation) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (permutation))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . psize) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (psize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptop) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (ptop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (cmp))) ; } impl Default for r_ordered_id_storage_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type ROIDStorage = r_ordered_id_storage_t ; extern "C" { pub fn r_oids_new (start_id : u32 , last_id : u32) -> * mut ROIDStorage ; } extern "C" { pub fn r_oids_get (storage : * mut ROIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_oget (storage : * mut ROIDStorage , od : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_get_id (storage : * mut ROIDStorage , od : u32 , id : * mut u32) -> bool ; } extern "C" { pub fn r_oids_get_od (storage : * mut ROIDStorage , id : u32 , od : * mut u32) -> bool ; } extern "C" { pub fn r_oids_to_front (storage : * mut ROIDStorage , id : u32) -> bool ; } extern "C" { pub fn r_oids_to_rear (storage : * mut ROIDStorage , id : u32) -> bool ; } extern "C" { pub fn r_oids_delete (storage : * mut ROIDStorage , id : u32) ; } extern "C" { pub fn r_oids_odelete (st : * mut ROIDStorage , od : u32) ; } extern "C" { pub fn r_oids_free (storage : * mut ROIDStorage) ; } extern "C" { pub fn r_oids_add (storage : * mut ROIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32 , od : * mut u32) -> bool ; } extern "C" { pub fn r_oids_take (storage : * mut ROIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_otake (st : * mut ROIDStorage , od : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_foreach (storage : * mut ROIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_foreach_prev (storage : * mut ROIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_insert (storage : * mut ROIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32 , od : * mut u32 , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_sort (storage : * mut ROIDStorage , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_find (storage : * mut ROIDStorage , incoming : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> u32 ; } extern "C" { pub fn r_oids_last (storage : * mut ROIDStorage) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_first (storage : * mut ROIDStorage) -> * mut :: std :: os :: raw :: c_void ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_string_t { pub length : u32 , pub string : * mut :: std :: os :: raw :: c_char , pub allocated : bool , } # [test] fn bindgen_test_layout_r_asn1_string_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_string_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_string_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_asn1_string_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_string_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_string_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allocated) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (allocated))) ; } impl Default for r_asn1_string_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1String = r_asn1_string_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_list_t { pub length : u32 , pub objects : * mut * mut r_asn1_object_t , } # [test] fn bindgen_test_layout_r_asn1_list_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_list_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_list_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_asn1_list_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_list_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_list_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_list_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . objects) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_list_t) , "::" , stringify ! (objects))) ; } impl Default for r_asn1_list_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1List = r_asn1_list_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_bin_t { pub length : u32 , pub binary : * mut u8 , } # [test] fn bindgen_test_layout_r_asn1_bin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_bin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_bin_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_asn1_bin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_bin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_bin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_bin_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binary) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_bin_t) , "::" , stringify ! (binary))) ; } impl Default for r_asn1_bin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1Binary = r_asn1_bin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_object_t { pub klass : u8 , pub form : u8 , pub tag : u8 , pub sector : * const u8 , pub length : u32 , pub bitlength : u32 , pub offset : u64 , pub list : RASN1List , pub headerlength : u8 , } # [test] fn bindgen_test_layout_r_asn1_object_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_object_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_object_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_asn1_object_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_object_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_object_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . klass) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (klass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . form) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (sector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitlength) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (bitlength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . headerlength) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (headerlength))) ; } impl Default for r_asn1_object_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1Object = r_asn1_object_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_t { pub buffer : * const u8 , pub length : usize , pub fmtmode : :: std :: os :: raw :: c_int , pub sb : * mut RStrBuf , pub pj : * mut PJ , pub root : * mut RASN1Object , } # [test] fn bindgen_test_layout_r_asn1_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_asn1_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fmtmode) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (fmtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (root))) ; } impl Default for r_asn1_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsn1 = r_asn1_t ; extern "C" { pub fn r_asn1_new (buffer : * const u8 , length : :: std :: os :: raw :: c_int , fmtmode : :: std :: os :: raw :: c_int) -> * mut RAsn1 ; } extern "C" { pub fn r_asn1_tostring (a : * mut RAsn1) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_free (a : * mut RAsn1) ; } extern "C" { pub fn r_asn1_oid (a : * mut RAsn1) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_object_parse (buffer_base : * const u8 , buffer : * const u8 , length : u32 , fmtmode : :: std :: os :: raw :: c_int) -> * mut RASN1Object ; } extern "C" { pub fn r_asn1_binary_new (buffer : * const u8 , length : u32) -> * mut RASN1Binary ; } extern "C" { pub fn r_asn1_string_new (string : * const :: std :: os :: raw :: c_char , allocated : bool , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_bits (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_utctime (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_time (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_integer (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_string (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_bytes (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_boolean (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_oid (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_object_tostring (object : * mut RASN1Object , depth : u32 , sb : * mut RStrBuf , pj : * mut PJ , fmtmode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_object_free (msg : * mut RASN1Object) ; } extern "C" { pub fn r_asn1_string_free (string : * mut RASN1String) ; } extern "C" { pub fn r_asn1_binary_free (string : * mut RASN1Binary) ; } pub type RConfigCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_node_t { pub name : * mut :: std :: os :: raw :: c_char , pub flags : u32 , pub value : * mut :: std :: os :: raw :: c_char , pub i_value : u64 , pub cb_ptr_q : * mut u64 , pub cb_ptr_i : * mut :: std :: os :: raw :: c_int , pub cb_ptr_s : * mut * mut :: std :: os :: raw :: c_char , pub getter : RConfigCallback , pub setter : RConfigCallback , pub desc : * mut :: std :: os :: raw :: c_char , pub options : * mut RList , } # [test] fn bindgen_test_layout_r_config_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_node_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_config_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . i_value) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (i_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_q) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_q))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_i) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_s) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getter) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (getter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setter) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (setter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (options))) ; } impl Default for r_config_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfigNode = r_config_node_t ; extern "C" { pub fn r_config_node_type (node : * mut RConfigNode) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_t { pub user : * mut :: std :: os :: raw :: c_void , pub num : * mut RNum , pub nodes : * mut RList , pub ht : * mut [u64 ; 11usize] , pub lock : bool , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_config_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_config_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 33usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_config_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfig = r_config_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_hold_t { pub cfg : * mut RConfig , pub list : * mut RList , } # [test] fn bindgen_test_layout_r_config_hold_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_hold_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_hold_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_config_hold_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_hold_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_hold_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_hold_t) , "::" , stringify ! (cfg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_hold_t) , "::" , stringify ! (list))) ; } impl Default for r_config_hold_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfigHold = r_config_hold_t ; extern "C" { pub fn r_config_hold_new (cfg : * mut RConfig) -> * mut RConfigHold ; } extern "C" { pub fn r_config_hold (h : * mut RConfigHold , ...) -> bool ; } extern "C" { pub fn r_config_hold_free (h : * mut RConfigHold) ; } extern "C" { pub fn r_config_hold_restore (h : * mut RConfigHold) ; } extern "C" { pub fn r_config_new (user : * mut :: std :: os :: raw :: c_void) -> * mut RConfig ; } extern "C" { pub fn r_config_clone (cfg : * mut RConfig) -> * mut RConfig ; } extern "C" { pub fn r_config_free (cfg : * mut RConfig) ; } extern "C" { pub fn r_config_lock (cfg : * mut RConfig , lock : bool) ; } extern "C" { pub fn r_config_eval (cfg : * mut RConfig , str_ : * const :: std :: os :: raw :: c_char , many : bool , error : * mut bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_bump (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_config_get_b (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_set_b (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , b : bool) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_i (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , i : u64) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_i_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , ivalue : :: std :: os :: raw :: c_int , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_b_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , bvalue : bool , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_rm (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_get_i (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_config_get (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_desc (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , desc : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_list (cfg : * mut RConfig , str_ : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_toggle (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_readonly (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_set_setter (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> bool ; } extern "C" { pub fn r_config_set_getter (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> bool ; } extern "C" { pub fn r_config_serialize (config : * mut RConfig , db : * mut Sdb) ; } extern "C" { pub fn r_config_unserialize (config : * mut RConfig , db : * mut Sdb , err : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_node_desc (node : * mut RConfigNode , desc : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_tostring (node : * mut RConfigNode) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_node_add_option (node : * mut RConfigNode , option : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_config_node_purge_options (node : * mut RConfigNode) ; } extern "C" { pub fn r_config_node_get (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_new (name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_free (n : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_config_node_value_format_i (buf : * mut :: std :: os :: raw :: c_char , buf_size : usize , i : u64 , node : * mut RConfigNode) ; } # [doc = " @brief Generic drawable graph node.\n\n Provides minimal information to draw something without output format specific details."] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_graph_node_info_t { pub title : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , # [doc = " @brief Optional offset for the object corresponding to node.\n\n Interactive output modes can use it to provide actions like seeking to\n this position or modify the object."] pub offset : u64 , } # [test] fn bindgen_test_layout_r_anal_graph_node_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_graph_node_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_graph_node_info_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_graph_node_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_graph_node_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_graph_node_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (offset))) ; } impl Default for r_anal_graph_node_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " @brief Generic drawable graph node.\n\n Provides minimal information to draw something without output format specific details."] pub type RGraphNodeInfo = r_anal_graph_node_info_t ; extern "C" { pub fn r_graph_free_node_info (ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_graph_create_node_info (title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut RGraphNodeInfo ; } extern "C" { pub fn r_graph_add_node_info (graph : * mut RGraph , title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut RGraphNode ; } extern "C" { # [doc = " @brief Convert graph to Graphviz dot format.\n\n @param graph Graph with RGraphNodeInfo used as node user data\n @param node_properties List node styling attributes. Can be set to NULL.\n @param edge_properties List edge styling attributes. Can be set to NULL."] pub fn r_graph_drawable_to_dot (graph : * mut RGraph , node_properties : * const :: std :: os :: raw :: c_char , edge_properties : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [doc = " @brief Convert graph to JSON.\n\n @param[in] graph Graph to convert\n @param[out] pj Json output structure. Can be used to include the resulting JSON value inside bigger JSON.\n @param[in] use_offset Set this to true if graph uses \\ref RGraphNodeInfo::offset offset field."] pub fn r_graph_drawable_to_json (graph : * mut RGraph , pj : * mut PJ , use_offset : bool) ; } extern "C" { pub fn r_bplist_parse (pj : * mut PJ , data : * const u8 , data_len : usize) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_validity_t { pub notBefore : * mut RASN1String , pub notAfter : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_validity_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_validity_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_validity_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_validity_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_validity_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_validity_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notBefore) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_validity_t) , "::" , stringify ! (notBefore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notAfter) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_validity_t) , "::" , stringify ! (notAfter))) ; } impl Default for r_x509_validity_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Validity = r_x509_validity_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_name_t { pub length : u32 , pub oids : * mut * mut RASN1String , pub names : * mut * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_name_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_name_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_name_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_name_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_name_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_name_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oids) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (oids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (names))) ; } impl Default for r_x509_name_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Name = r_x509_name_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_algorithmidentifier_t { pub algorithm : * mut RASN1String , pub parameters : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_algorithmidentifier_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_algorithmidentifier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_algorithmidentifier_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_algorithmidentifier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_algorithmidentifier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_algorithmidentifier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_algorithmidentifier_t) , "::" , stringify ! (algorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parameters) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_algorithmidentifier_t) , "::" , stringify ! (parameters))) ; } impl Default for r_x509_algorithmidentifier_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509AlgorithmIdentifier = r_x509_algorithmidentifier_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_subjectpublickeyinfo_t { pub algorithm : RX509AlgorithmIdentifier , pub subjectPublicKey : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_subjectpublickeyinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_subjectpublickeyinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_subjectpublickeyinfo_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_subjectpublickeyinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_subjectpublickeyinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_subjectpublickeyinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_subjectpublickeyinfo_t) , "::" , stringify ! (algorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectPublicKey) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_subjectpublickeyinfo_t) , "::" , stringify ! (subjectPublicKey))) ; } impl Default for r_x509_subjectpublickeyinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509SubjectPublicKeyInfo = r_x509_subjectpublickeyinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_extension_t { pub extnID : * mut RASN1String , pub critical : bool , pub extnValue : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_extension_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_extension_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_extension_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_extension_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_extension_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_extension_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extnID) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (extnID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . critical) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (critical))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extnValue) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (extnValue))) ; } impl Default for r_x509_extension_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Extension = r_x509_extension_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_extensions_t { pub length : u32 , pub extensions : * mut * mut RX509Extension , } # [test] fn bindgen_test_layout_r_x509_extensions_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_extensions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_extensions_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_extensions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_extensions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_extensions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_extensions_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extensions) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_extensions_t) , "::" , stringify ! (extensions))) ; } impl Default for r_x509_extensions_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Extensions = r_x509_extensions_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_tbscertificate_t { pub version : u32 , pub serialNumber : * mut RASN1String , pub signature : RX509AlgorithmIdentifier , pub issuer : RX509Name , pub validity : RX509Validity , pub subject : RX509Name , pub subjectPublicKeyInfo : RX509SubjectPublicKeyInfo , pub issuerUniqueID : * mut RASN1Binary , pub subjectUniqueID : * mut RASN1Binary , pub extensions : RX509Extensions , } # [test] fn bindgen_test_layout_r_x509_tbscertificate_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_tbscertificate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_tbscertificate_t > () , 152usize , concat ! ("Size of: " , stringify ! (r_x509_tbscertificate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_tbscertificate_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_tbscertificate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serialNumber) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (serialNumber))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . validity) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (validity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subject) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subject))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectPublicKeyInfo) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subjectPublicKeyInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuerUniqueID) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (issuerUniqueID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectUniqueID) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subjectUniqueID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extensions) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (extensions))) ; } impl Default for r_x509_tbscertificate_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509TBSCertificate = r_x509_tbscertificate_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_certificate_t { pub tbsCertificate : RX509TBSCertificate , pub algorithmIdentifier : RX509AlgorithmIdentifier , pub signature : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_certificate_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_certificate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_certificate_t > () , 176usize , concat ! ("Size of: " , stringify ! (r_x509_certificate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_certificate_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_certificate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tbsCertificate) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (tbsCertificate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithmIdentifier) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (algorithmIdentifier))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (signature))) ; } impl Default for r_x509_certificate_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Certificate = r_x509_certificate_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_crlentry { pub userCertificate : * mut RASN1Binary , pub revocationDate : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_crlentry () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_crlentry > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_crlentry > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_crlentry))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_crlentry > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_crlentry))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . userCertificate) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_crlentry) , "::" , stringify ! (userCertificate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revocationDate) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_crlentry) , "::" , stringify ! (revocationDate))) ; } impl Default for r_x509_crlentry { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509CRLEntry = r_x509_crlentry ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_certificaterevocationlist { pub signature : RX509AlgorithmIdentifier , pub issuer : RX509Name , pub lastUpdate : * mut RASN1String , pub nextUpdate : * mut RASN1String , pub length : u32 , pub revokedCertificates : * mut * mut RX509CRLEntry , } # [test] fn bindgen_test_layout_r_x509_certificaterevocationlist () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_certificaterevocationlist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_certificaterevocationlist > () , 72usize , concat ! ("Size of: " , stringify ! (r_x509_certificaterevocationlist))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_certificaterevocationlist > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_certificaterevocationlist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastUpdate) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (lastUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextUpdate) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (nextUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revokedCertificates) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (revokedCertificates))) ; } impl Default for r_x509_certificaterevocationlist { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509CertificateRevocationList = r_x509_certificaterevocationlist ; extern "C" { pub fn r_x509_crl_parse (object : * mut RASN1Object) -> * mut RX509CertificateRevocationList ; } extern "C" { pub fn r_x509_crl_tostring (crl : * mut RX509CertificateRevocationList , pad : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_x509_crl_json (pj : * mut PJ , crl : * mut RX509CertificateRevocationList) ; } extern "C" { pub fn r_x509_certificate_parse (object : * mut RASN1Object) -> * mut RX509Certificate ; } extern "C" { pub fn r_x509_certificate_free (certificate : * mut RX509Certificate) ; } extern "C" { pub fn r_x509_certificate_tostring (certificate : * mut RX509Certificate , pad : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_x509_certificate_json (pj : * mut PJ , certificate : * mut RX509Certificate) ; } extern "C" { pub fn r_x509_certificate_dump (cert : * mut RX509Certificate , pad : * const :: std :: os :: raw :: c_char , sb : * mut RStrBuf) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_certificaterevocationlists_t { pub length : u32 , pub elements : * mut * mut RX509CertificateRevocationList , } # [test] fn bindgen_test_layout_r_pkcs7_certificaterevocationlists_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_certificaterevocationlists_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_certificaterevocationlists_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_certificaterevocationlists_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_certificaterevocationlists_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_certificaterevocationlists_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_certificaterevocationlists_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_certificaterevocationlists_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_certificaterevocationlists_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7CertificateRevocationLists = r_pkcs7_certificaterevocationlists_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_extendedcertificatesandcertificates_t { pub length : u32 , pub elements : * mut * mut RX509Certificate , } # [test] fn bindgen_test_layout_r_pkcs7_extendedcertificatesandcertificates_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_extendedcertificatesandcertificates_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_extendedcertificatesandcertificates_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_extendedcertificatesandcertificates_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_extendedcertificatesandcertificates_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7ExtendedCertificatesAndCertificates = r_pkcs7_extendedcertificatesandcertificates_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_digestalgorithmidentifiers_t { pub length : u32 , pub elements : * mut * mut RX509AlgorithmIdentifier , } # [test] fn bindgen_test_layout_r_pkcs7_digestalgorithmidentifiers_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_digestalgorithmidentifiers_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_digestalgorithmidentifiers_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_digestalgorithmidentifiers_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_digestalgorithmidentifiers_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7DigestAlgorithmIdentifiers = r_pkcs7_digestalgorithmidentifiers_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_contentinfo_t { pub contentType : * mut RASN1String , pub content : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_contentinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_contentinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_contentinfo_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_contentinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_contentinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_contentinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentType) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_contentinfo_t) , "::" , stringify ! (contentType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_contentinfo_t) , "::" , stringify ! (content))) ; } impl Default for r_pkcs7_contentinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7ContentInfo = r_pkcs7_contentinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_issuerandserialnumber_t { pub issuer : RX509Name , pub serialNumber : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_issuerandserialnumber_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_issuerandserialnumber_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_issuerandserialnumber_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_pkcs7_issuerandserialnumber_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_issuerandserialnumber_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_issuerandserialnumber_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_issuerandserialnumber_t) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serialNumber) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_issuerandserialnumber_t) , "::" , stringify ! (serialNumber))) ; } impl Default for r_pkcs7_issuerandserialnumber_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7IssuerAndSerialNumber = r_pkcs7_issuerandserialnumber_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_attribute_t { pub oid : * mut RASN1String , pub data : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_attribute_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_attribute_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_attribute_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_attribute_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_attribute_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_attribute_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attribute_t) , "::" , stringify ! (oid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attribute_t) , "::" , stringify ! (data))) ; } impl Default for r_pkcs7_attribute_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7Attribute = r_pkcs7_attribute_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_attributes_t { pub length : u32 , pub elements : * mut * mut RPKCS7Attribute , } # [test] fn bindgen_test_layout_r_pkcs7_attributes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_attributes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_attributes_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_attributes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_attributes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_attributes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attributes_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attributes_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_attributes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7Attributes = r_pkcs7_attributes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signerinfo_t { pub version : u32 , pub issuerAndSerialNumber : RPKCS7IssuerAndSerialNumber , pub digestAlgorithm : RX509AlgorithmIdentifier , pub authenticatedAttributes : RPKCS7Attributes , pub digestEncryptionAlgorithm : RX509AlgorithmIdentifier , pub encryptedDigest : * mut RASN1Binary , pub unauthenticatedAttributes : RPKCS7Attributes , } # [test] fn bindgen_test_layout_r_pkcs7_signerinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signerinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signerinfo_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signerinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signerinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signerinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuerAndSerialNumber) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (issuerAndSerialNumber))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (digestAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . authenticatedAttributes) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (authenticatedAttributes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestEncryptionAlgorithm) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (digestEncryptionAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encryptedDigest) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (encryptedDigest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unauthenticatedAttributes) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (unauthenticatedAttributes))) ; } impl Default for r_pkcs7_signerinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignerInfo = r_pkcs7_signerinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signerinfos_t { pub length : u32 , pub elements : * mut * mut RPKCS7SignerInfo , } # [test] fn bindgen_test_layout_r_pkcs7_signerinfos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signerinfos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signerinfos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signerinfos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signerinfos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signerinfos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfos_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfos_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_signerinfos_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignerInfos = r_pkcs7_signerinfos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signeddata_t { pub version : u32 , pub digestAlgorithms : RPKCS7DigestAlgorithmIdentifiers , pub contentInfo : RPKCS7ContentInfo , pub certificates : RPKCS7ExtendedCertificatesAndCertificates , pub crls : RPKCS7CertificateRevocationLists , pub signerinfos : RPKCS7SignerInfos , } # [test] fn bindgen_test_layout_r_pkcs7_signeddata_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signeddata_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signeddata_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signeddata_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signeddata_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signeddata_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithms) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (digestAlgorithms))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentInfo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (contentInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . certificates) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (certificates))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crls) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (crls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signerinfos) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (signerinfos))) ; } impl Default for r_pkcs7_signeddata_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignedData = r_pkcs7_signeddata_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_container_t { pub contentType : * mut RASN1String , pub signedData : RPKCS7SignedData , } # [test] fn bindgen_test_layout_r_pkcs7_container_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_container_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_container_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_pkcs7_container_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_container_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_container_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentType) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_container_t) , "::" , stringify ! (contentType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signedData) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_container_t) , "::" , stringify ! (signedData))) ; } impl Default for r_pkcs7_container_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCMS = r_pkcs7_container_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcAttributeTypeAndOptionalValue { pub type_ : * mut RASN1String , pub data : * mut RASN1Binary , } # [test] fn bindgen_test_layout_SpcAttributeTypeAndOptionalValue () { const UNINIT : :: std :: mem :: MaybeUninit < SpcAttributeTypeAndOptionalValue > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcAttributeTypeAndOptionalValue > () , 16usize , concat ! ("Size of: " , stringify ! (SpcAttributeTypeAndOptionalValue))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcAttributeTypeAndOptionalValue > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcAttributeTypeAndOptionalValue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcAttributeTypeAndOptionalValue) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (SpcAttributeTypeAndOptionalValue) , "::" , stringify ! (data))) ; } impl Default for SpcAttributeTypeAndOptionalValue { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcDigestInfo { pub digestAlgorithm : RX509AlgorithmIdentifier , pub digest : * mut RASN1Binary , } # [test] fn bindgen_test_layout_SpcDigestInfo () { const UNINIT : :: std :: mem :: MaybeUninit < SpcDigestInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcDigestInfo > () , 24usize , concat ! ("Size of: " , stringify ! (SpcDigestInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcDigestInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcDigestInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcDigestInfo) , "::" , stringify ! (digestAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digest) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SpcDigestInfo) , "::" , stringify ! (digest))) ; } impl Default for SpcDigestInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcIndirectDataContent { pub data : SpcAttributeTypeAndOptionalValue , pub messageDigest : SpcDigestInfo , } # [test] fn bindgen_test_layout_SpcIndirectDataContent () { const UNINIT : :: std :: mem :: MaybeUninit < SpcIndirectDataContent > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcIndirectDataContent > () , 40usize , concat ! ("Size of: " , stringify ! (SpcIndirectDataContent))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcIndirectDataContent > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcIndirectDataContent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcIndirectDataContent) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . messageDigest) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SpcIndirectDataContent) , "::" , stringify ! (messageDigest))) ; } impl Default for SpcIndirectDataContent { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_pkcs7_cms_parse (buffer : * const u8 , length : u32) -> * mut RCMS ; } extern "C" { pub fn r_pkcs7_cms_free (container : * mut RCMS) ; } extern "C" { pub fn r_pkcs7_cms_tostring (container : * mut RCMS) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_pkcs7_cms_json (container : * mut RCMS) -> * mut PJ ; } extern "C" { pub fn r_pkcs7_spcinfo_parse (cms : * mut RCMS) -> * mut SpcIndirectDataContent ; } extern "C" { pub fn r_pkcs7_spcinfo_free (spcinfo : * mut SpcIndirectDataContent) ; } extern "C" { pub fn r_protobuf_decode (buffer : * const u8 , size : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RRef = :: std :: os :: raw :: c_int ; pub const RTokenType_R_TOKEN_NONE : RTokenType = 0 ; pub const RTokenType_R_TOKEN_INT : RTokenType = 1 ; pub const RTokenType_R_TOKEN_FLOAT : RTokenType = 2 ; pub const RTokenType_R_TOKEN_WORD : RTokenType = 3 ; pub const RTokenType_R_TOKEN_HASH : RTokenType = 4 ; pub const RTokenType_R_TOKEN_STRING : RTokenType = 5 ; pub const RTokenType_R_TOKEN_COMMENT : RTokenType = 6 ; pub const RTokenType_R_TOKEN_MATH : RTokenType = 7 ; pub const RTokenType_R_TOKEN_GROUP : RTokenType = 8 ; pub const RTokenType_R_TOKEN_BEGIN : RTokenType = 9 ; pub const RTokenType_R_TOKEN_END : RTokenType = 10 ; pub type RTokenType = :: std :: os :: raw :: c_uint ; pub type RTokenizerCallback = :: std :: option :: Option < unsafe extern "C" fn (tok : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tokenizer_t { pub hex : bool , pub escape : bool , pub buf : * const :: std :: os :: raw :: c_char , pub ch : :: std :: os :: raw :: c_char , pub begin : usize , pub indent : :: std :: os :: raw :: c_int , pub end : usize , pub type_ : RTokenType , pub cb : RTokenizerCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tokenizer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tokenizer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tokenizer_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_tokenizer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tokenizer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tokenizer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (hex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . escape) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (escape))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ch) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . begin) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . indent) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (indent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (user))) ; } impl Default for r_tokenizer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTokenizer = r_tokenizer_t ; extern "C" { pub fn r_str_tokenize_json (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_tokenizer_new () -> * mut RTokenizer ; } extern "C" { pub fn r_str_tokenize (buf : * const :: std :: os :: raw :: c_char , cb : RTokenizerCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_axml_decode (data : * const u8 , data_size : u64 , pj : * mut PJ) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cfloat_profile_t { pub sign_bits : :: std :: os :: raw :: c_int , pub exp_bits : :: std :: os :: raw :: c_int , pub mant_bits : :: std :: os :: raw :: c_int , pub bias : :: std :: os :: raw :: c_int , pub big_endian : bool , pub explicit_leading_bit : bool , } # [test] fn bindgen_test_layout_r_cfloat_profile_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cfloat_profile_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cfloat_profile_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_cfloat_profile_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cfloat_profile_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_cfloat_profile_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (sign_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exp_bits) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (exp_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mant_bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (mant_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bias) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (bias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . explicit_leading_bit) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (explicit_leading_bit))) ; } pub type RCFloatProfile = r_cfloat_profile_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cfloat_value_t { pub words : [u64 ; 4usize] , } # [test] fn bindgen_test_layout_r_cfloat_value_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cfloat_value_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cfloat_value_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cfloat_value_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cfloat_value_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cfloat_value_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . words) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_value_t) , "::" , stringify ! (words))) ; } pub type RCFloatValue = r_cfloat_value_t ; extern "C" { pub fn r_cfloat_parse (buf : * const u8 , buf_size : usize , profile : * const RCFloatProfile) -> f64 ; } extern "C" { pub fn r_cfloat_parse_simple (buf : * const u8 , buf_size : usize , exp_bits : :: std :: os :: raw :: c_int , mant_bits : :: std :: os :: raw :: c_int) -> f64 ; } extern "C" { pub fn r_cfloat_write (value : f64 , profile : * const RCFloatProfile , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_write_simple (value : f64 , exp_bits : :: std :: os :: raw :: c_int , mant_bits : :: std :: os :: raw :: c_int , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_parse_ex (buf : * const u8 , buf_size : usize , profile : * const RCFloatProfile , out : * mut RCFloatValue) -> bool ; } extern "C" { pub fn r_cfloat_write_ex (value : * const RCFloatValue , profile : * const RCFloatProfile , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_value_to_double (value : * const RCFloatValue , profile : * const RCFloatProfile) -> f64 ; } extern "C" { pub fn r_cfloat_value_to_longdouble (value : * const RCFloatValue , profile : * const RCFloatProfile) -> u128 ; } extern "C" { pub fn r_cfloat_value_from_double (value : * mut RCFloatValue , d : f64 , profile : * const RCFloatProfile) ; } extern "C" { pub fn r_cfloat_value_from_longdouble (value : * mut RCFloatValue , ld : u128 , profile : * const RCFloatProfile) ; } extern "C" { pub fn r_cfloat_profile_from_name (name : * const :: std :: os :: raw :: c_char) -> * const RCFloatProfile ; } extern "C" { pub fn r_cfloat_profile_from_bits (bits : :: std :: os :: raw :: c_int , profile : * mut RCFloatProfile) -> bool ; } extern "C" { pub fn r_lz4_compress (obuf : * mut u8 , buf : * mut u8 , buf_size : usize , max_chain : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_lz4_decompress (input : * const u8 , input_size : usize , output_size : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_lz4_decompress_block (g_buf : * mut u8 , comp_len : :: std :: os :: raw :: c_int , pp : * mut :: std :: os :: raw :: c_int , obuf : * mut u8 , osz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_getopt_t { pub err : bool , pub ind : :: std :: os :: raw :: c_int , pub opt : :: std :: os :: raw :: c_int , pub arg : * const :: std :: os :: raw :: c_char , pub place : * const :: std :: os :: raw :: c_char , pub argc : :: std :: os :: raw :: c_int , pub argv : * mut * const :: std :: os :: raw :: c_char , pub ostr : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_getopt_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_getopt_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_getopt_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_getopt_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_getopt_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_getopt_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ind) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (ind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arg) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (arg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . place) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (place))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (argv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ostr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (ostr))) ; } impl Default for r_getopt_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGetopt = r_getopt_t ; extern "C" { pub fn r_getopt_init (go : * mut RGetopt , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char , ostr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_getopt_next (opt : * mut RGetopt) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_main_t { pub name : * const :: std :: os :: raw :: c_char , pub main : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_main_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_main_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_main_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_main_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_main_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_main_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_main_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_main_t) , "::" , stringify ! (main))) ; } impl Default for r_main_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMain = r_main_t ; pub type RMainCallback = :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_main_new (name : * const :: std :: os :: raw :: c_char) -> * mut RMain ; } extern "C" { pub fn r_main_free (m : * mut RMain) ; } extern "C" { pub fn r_main_run (m : * mut RMain , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_version_print (program : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_ravc2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rax2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rarun2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rahash2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rabin2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_radare2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rasm2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2agent (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rafind2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_radiff2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_ragg2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rasign2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2pm (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rapatch2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rafs2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2_build_flags (out_cflags : * mut * mut :: std :: os :: raw :: c_char , out_ldflags : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } pub type RCoreCmd = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; pub type RCoreCmdF = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RCoreCallAt = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreDebugBpHit = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , bp : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RCoreDebugSyscallHit = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) > ; pub type RCoreCmdStr = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreBindHelp = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , help : * const * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreCmdStrF = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char > ; pub type RCorePuts = :: std :: option :: Option < unsafe extern "C" fn (cmd : * const :: std :: os :: raw :: c_char) > ; pub type RCoreSetArchBits = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) > ; pub type RCoreIsMapped = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64 , perm : :: std :: os :: raw :: c_int) -> bool > ; pub type RCoreDebugMapsSync = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RCoreGetName = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , off : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RCoreGetNameDelta = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , off : u64) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreSeekArchBits = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64) > ; pub type RCoreConfigGetB = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RCoreConfigGetI = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> u64 > ; pub type RCoreConfigGet = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char > ; pub type RCoreNumGet = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , str_ : * const :: std :: os :: raw :: c_char) -> u64 > ; pub type RCorePJWithEncoding = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_bind_t { pub core : * mut :: std :: os :: raw :: c_void , pub cmd : RCoreCmd , pub cmdf : RCoreCmdF , pub callAt : RCoreCallAt , pub cmdStr : RCoreCmdStr , pub cmdStrF : RCoreCmdStrF , pub help : RCoreBindHelp , pub puts : RCorePuts , pub bpHit : RCoreDebugBpHit , pub sysHit : RCoreDebugSyscallHit , pub setArchBits : RCoreSetArchBits , pub getName : RCoreGetName , pub getNameDelta : RCoreGetNameDelta , pub archBits : RCoreSeekArchBits , pub cfgGetB : RCoreConfigGetB , pub cfgGetI : RCoreConfigGetI , pub cfgGet : RCoreConfigGet , pub numGet : RCoreNumGet , pub isMapped : RCoreIsMapped , pub syncDebugMaps : RCoreDebugMapsSync , pub pjWithEncoding : RCorePJWithEncoding , } # [test] fn bindgen_test_layout_r_core_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_bind_t > () , 168usize , concat ! ("Size of: " , stringify ! (r_core_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callAt) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (callAt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdStr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStrF) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdStrF))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . puts) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (puts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpHit) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (bpHit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysHit) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (sysHit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setArchBits) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (setArchBits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getName) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (getName))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getNameDelta) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (getNameDelta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . archBits) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (archBits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGetB) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGetB))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGetI) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGetI))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGet) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGet))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numGet) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (numGet))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isMapped) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (isMapped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syncDebugMaps) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (syncDebugMaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pjWithEncoding) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (pjWithEncoding))) ; } impl Default for r_core_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreBind = r_core_bind_t ; pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct in_addr { pub s_addr : in_addr_t , } # [test] fn bindgen_test_layout_in_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_addr > () , 4usize , concat ! ("Size of: " , stringify ! (in_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_addr) , "::" , stringify ! (s_addr))) ; } pub type in_port_t = u16 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct sockaddr_in { pub sin_family : sa_family_t , pub sin_port : in_port_t , pub sin_addr : in_addr , pub sin_zero : [:: std :: os :: raw :: c_uchar ; 8usize] , } # [test] fn bindgen_test_layout_sockaddr_in () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr_in))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_zero) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_zero))) ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_socket_t { pub fd : :: std :: os :: raw :: c_int , pub is_ssl : bool , pub proto : :: std :: os :: raw :: c_int , pub local : :: std :: os :: raw :: c_int , pub port : :: std :: os :: raw :: c_int , pub sa : sockaddr_in , } # [test] fn bindgen_test_layout_r_socket_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_t > () , 36usize , concat ! ("Size of: " , stringify ! (r_socket_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_socket_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_ssl) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (is_ssl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . proto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . local) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (local))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (sa))) ; } pub type RSocket = r_socket_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_http_options { pub authtokens : * mut RList , pub accept_timeout : bool , pub timeout : :: std :: os :: raw :: c_int , pub httpauth : bool , } # [test] fn bindgen_test_layout_r_socket_http_options () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_http_options > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_http_options > () , 24usize , concat ! ("Size of: " , stringify ! (r_socket_http_options))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_http_options > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_http_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . authtokens) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (authtokens))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accept_timeout) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (accept_timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . httpauth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (httpauth))) ; } impl Default for r_socket_http_options { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketHTTPOptions = r_socket_http_options ; extern "C" { pub fn r_socket_new_from_fd (fd : :: std :: os :: raw :: c_int) -> * mut RSocket ; } extern "C" { pub fn r_socket_new (is_ssl : bool) -> * mut RSocket ; } extern "C" { pub fn r_socket_spawn (s : * mut RSocket , cmd : * const :: std :: os :: raw :: c_char , timeout : :: std :: os :: raw :: c_uint) -> bool ; } extern "C" { pub fn r_socket_connect (s : * mut RSocket , host : * const :: std :: os :: raw :: c_char , port : * const :: std :: os :: raw :: c_char , proto : :: std :: os :: raw :: c_int , timeout : :: std :: os :: raw :: c_uint) -> bool ; } extern "C" { pub fn r_socket_connect_serial (sock : * mut RSocket , path : * const :: std :: os :: raw :: c_char , speed : :: std :: os :: raw :: c_int , parity : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_listen (s : * mut RSocket , port : * const :: std :: os :: raw :: c_char , certfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_port_by_name (name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_close_fd (s : * mut RSocket) -> bool ; } extern "C" { pub fn r_socket_close (s : * mut RSocket) -> bool ; } extern "C" { pub fn r_socket_free (s : * mut RSocket) ; } extern "C" { pub fn r_socket_accept (s : * mut RSocket) -> * mut RSocket ; } extern "C" { pub fn r_socket_accept_timeout (s : * mut RSocket , timeout : :: std :: os :: raw :: c_uint) -> * mut RSocket ; } extern "C" { pub fn r_socket_block_time (s : * mut RSocket , block : bool , sec : :: std :: os :: raw :: c_int , usec : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_socket_flush (s : * mut RSocket) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_ready (s : * mut RSocket , secs : :: std :: os :: raw :: c_int , usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_tostring (s : * mut RSocket) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_write (s : * mut RSocket , buf : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_puts (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_printf (s : * mut RSocket , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_socket_read (s : * mut RSocket , read : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_read_block (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_gets (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_slurp (s : * mut RSocket , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_socket_is_connected (arg1 : * mut RSocket) -> bool ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_socket_proc_t { pub fd0 : [:: std :: os :: raw :: c_int ; 2usize] , pub fd1 : [:: std :: os :: raw :: c_int ; 2usize] , pub pid : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_socket_proc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_proc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_proc_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_socket_proc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_proc_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_socket_proc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd0) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (fd0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd1) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (fd1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (pid))) ; } pub type RSocketProc = r_socket_proc_t ; extern "C" { pub fn r_socket_proc_open (argv : * const * mut :: std :: os :: raw :: c_char) -> * mut RSocketProc ; } extern "C" { pub fn r_socket_proc_close (sp : * mut RSocketProc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_read (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_gets (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_write (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_printf (sp : * mut RSocketProc , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_socket_proc_ready (sp : * mut RSocketProc , secs : :: std :: os :: raw :: c_int , usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_http_get (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , code : * mut :: std :: os :: raw :: c_int , rlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_http_post (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , code : * mut :: std :: os :: raw :: c_int , rlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_http_download (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , filepath : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_http_server_set_breaked (b : * mut bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_http_request { pub s : * mut RSocket , pub path : * mut :: std :: os :: raw :: c_char , pub host : * mut :: std :: os :: raw :: c_char , pub agent : * mut :: std :: os :: raw :: c_char , pub method : * mut :: std :: os :: raw :: c_char , pub referer : * mut :: std :: os :: raw :: c_char , pub data : * mut u8 , pub data_length : :: std :: os :: raw :: c_int , pub auth : bool , } # [test] fn bindgen_test_layout_r_socket_http_request () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_http_request > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_http_request > () , 64usize , concat ! ("Size of: " , stringify ! (r_socket_http_request))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_http_request > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_http_request))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . host) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . agent) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (agent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . method) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (method))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . referer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (referer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_length) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (data_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . auth) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (auth))) ; } impl Default for r_socket_http_request { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketHTTPRequest = r_socket_http_request ; extern "C" { pub fn r_socket_http_accept (s : * mut RSocket , so : * mut RSocketHTTPOptions) -> * mut RSocketHTTPRequest ; } extern "C" { pub fn r_socket_http_response (rs : * mut RSocketHTTPRequest , code : :: std :: os :: raw :: c_int , out : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , headers : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_socket_http_close (rs : * mut RSocketHTTPRequest) ; } extern "C" { pub fn r_socket_http_handle_upload (str_ : * const u8 , len : :: std :: os :: raw :: c_int , olen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_socket_http_free (rs : * mut RSocketHTTPRequest) ; } pub type rap_server_open = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , file : * const :: std :: os :: raw :: c_char , flg : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_seek = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , offset : u64 , whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_read = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_write = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_cmd = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , command : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type rap_server_close = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_rap_server_t { pub fd : * mut RSocket , pub port : * mut :: std :: os :: raw :: c_char , pub buf : [u8 ; 4128usize] , pub open : rap_server_open , pub seek : rap_server_seek , pub read : rap_server_read , pub write : rap_server_write , pub system : rap_server_cmd , pub cmd : rap_server_cmd , pub close : rap_server_close , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_socket_rap_server_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_rap_server_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_rap_server_t > () , 4208usize , concat ! ("Size of: " , stringify ! (r_socket_rap_server_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_rap_server_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_rap_server_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 4144usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 4152usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4160usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4168usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 4176usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 4184usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 4192usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (user))) ; } impl Default for r_socket_rap_server_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketRapServer = r_socket_rap_server_t ; extern "C" { pub fn r_socket_rap_server_new (is_ssl : bool , port : * const :: std :: os :: raw :: c_char) -> * mut RSocketRapServer ; } extern "C" { pub fn r_socket_rap_server_create (pathname : * const :: std :: os :: raw :: c_char) -> * mut RSocketRapServer ; } extern "C" { pub fn r_socket_rap_server_free (rap_s : * mut RSocketRapServer) ; } extern "C" { pub fn r_socket_rap_server_listen (rap_s : * mut RSocketRapServer , certfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_rap_server_accept (rap_s : * mut RSocketRapServer) -> * mut RSocket ; } extern "C" { pub fn r_socket_rap_server_continue (rap_s : * mut RSocketRapServer) -> bool ; } extern "C" { pub fn r_socket_rap_client_open (s : * mut RSocket , file : * const :: std :: os :: raw :: c_char , rw : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_command (s : * mut RSocket , cmd : * const :: std :: os :: raw :: c_char , c : * mut RCoreBind) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_rap_client_write (s : * mut RSocket , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_read (s : * mut RSocket , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_seek (s : * mut RSocket , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_run_profile_t { pub _args : [* mut :: std :: os :: raw :: c_char ; 512usize] , pub _argc : :: std :: os :: raw :: c_int , pub _daemon : bool , pub _system : * mut :: std :: os :: raw :: c_char , pub _program : * mut :: std :: os :: raw :: c_char , pub _runlib : * mut :: std :: os :: raw :: c_char , pub _runlib_fcn : * mut :: std :: os :: raw :: c_char , pub _stdio : * mut :: std :: os :: raw :: c_char , pub _stdin : * mut :: std :: os :: raw :: c_char , pub _stdout : * mut :: std :: os :: raw :: c_char , pub _stderr : * mut :: std :: os :: raw :: c_char , pub _chgdir : * mut :: std :: os :: raw :: c_char , pub _chroot : * mut :: std :: os :: raw :: c_char , pub _libpath : * mut :: std :: os :: raw :: c_char , pub _preload : * mut RList , pub _bits : :: std :: os :: raw :: c_int , pub _time : bool , pub _pid : :: std :: os :: raw :: c_int , pub _pidfile : * mut :: std :: os :: raw :: c_char , pub _r2preload : bool , pub _docore : bool , pub _dofork : bool , pub _aslr : :: std :: os :: raw :: c_int , pub _maxstack : :: std :: os :: raw :: c_int , pub _maxproc : :: std :: os :: raw :: c_int , pub _maxfd : :: std :: os :: raw :: c_int , pub _r2sleep : :: std :: os :: raw :: c_int , pub _execve : :: std :: os :: raw :: c_int , pub _setuid : * mut :: std :: os :: raw :: c_char , pub _seteuid : * mut :: std :: os :: raw :: c_char , pub _setgid : * mut :: std :: os :: raw :: c_char , pub _setegid : * mut :: std :: os :: raw :: c_char , pub _input : * mut :: std :: os :: raw :: c_char , pub _connect : * mut :: std :: os :: raw :: c_char , pub _listen : * mut :: std :: os :: raw :: c_char , pub _pty : :: std :: os :: raw :: c_int , pub _timeout : :: std :: os :: raw :: c_int , pub _timeout_sig : :: std :: os :: raw :: c_int , pub _nice : :: std :: os :: raw :: c_int , pub _stderrout : bool , pub _noprogram : bool , } # [test] fn bindgen_test_layout_r_run_profile_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_run_profile_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_run_profile_t > () , 4336usize , concat ! ("Size of: " , stringify ! (r_run_profile_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_run_profile_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_run_profile_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _args) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _argc) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _daemon) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_daemon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _system) as usize - ptr as usize } , 4104usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _program) as usize - ptr as usize } , 4112usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_program))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _runlib) as usize - ptr as usize } , 4120usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_runlib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _runlib_fcn) as usize - ptr as usize } , 4128usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_runlib_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdio) as usize - ptr as usize } , 4136usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdio))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdin) as usize - ptr as usize } , 4144usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdout) as usize - ptr as usize } , 4152usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stderr) as usize - ptr as usize } , 4160usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stderr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chgdir) as usize - ptr as usize } , 4168usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_chgdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chroot) as usize - ptr as usize } , 4176usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_chroot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _libpath) as usize - ptr as usize } , 4184usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_libpath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _preload) as usize - ptr as usize } , 4192usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_preload))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _bits) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _time) as usize - ptr as usize } , 4204usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pid) as usize - ptr as usize } , 4208usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pidfile) as usize - ptr as usize } , 4216usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pidfile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _r2preload) as usize - ptr as usize } , 4224usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_r2preload))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _docore) as usize - ptr as usize } , 4225usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_docore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _dofork) as usize - ptr as usize } , 4226usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_dofork))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _aslr) as usize - ptr as usize } , 4228usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_aslr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxstack) as usize - ptr as usize } , 4232usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxproc) as usize - ptr as usize } , 4236usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxproc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxfd) as usize - ptr as usize } , 4240usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _r2sleep) as usize - ptr as usize } , 4244usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_r2sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _execve) as usize - ptr as usize } , 4248usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_execve))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setuid) as usize - ptr as usize } , 4256usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setuid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _seteuid) as usize - ptr as usize } , 4264usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_seteuid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setgid) as usize - ptr as usize } , 4272usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setgid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setegid) as usize - ptr as usize } , 4280usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setegid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _input) as usize - ptr as usize } , 4288usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _connect) as usize - ptr as usize } , 4296usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_connect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _listen) as usize - ptr as usize } , 4304usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_listen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pty) as usize - ptr as usize } , 4312usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pty))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _timeout) as usize - ptr as usize } , 4316usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _timeout_sig) as usize - ptr as usize } , 4320usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_timeout_sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _nice) as usize - ptr as usize } , 4324usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_nice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stderrout) as usize - ptr as usize } , 4328usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stderrout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _noprogram) as usize - ptr as usize } , 4329usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_noprogram))) ; } impl Default for r_run_profile_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRunProfile = r_run_profile_t ; extern "C" { pub fn r_run_new (str_ : * const :: std :: os :: raw :: c_char) -> * mut RRunProfile ; } extern "C" { pub fn r_run_parse (pf : * mut RRunProfile , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_free (r : * mut RRunProfile) ; } extern "C" { pub fn r_run_parseline (p : * mut RRunProfile , b : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_help () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_run_config_env (p : * mut RRunProfile) -> bool ; } extern "C" { pub fn r_run_start (p : * mut RRunProfile) -> bool ; } extern "C" { pub fn r_run_reset (p : * mut RRunProfile) ; } extern "C" { pub fn r_run_fini (p : * mut RRunProfile) ; } extern "C" { pub fn r_run_parsefile (p : * mut RRunProfile , b : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_get_environ_profile (env : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct magic_set { _unused : [u8 ; 0] , } extern "C" { pub fn r_magic_new (flags : :: std :: os :: raw :: c_int) -> * mut magic_set ; } extern "C" { pub fn r_magic_free (arg1 : * mut magic_set) ; } extern "C" { pub fn r_magic_file (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_descriptor (arg1 : * mut magic_set , arg2 : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_buffer (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_void , arg3 : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_error (arg1 : * mut magic_set) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_setflags (arg1 : * mut magic_set , arg2 : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_magic_from_ebcdic (arg1 : * const u8 , arg2 : usize , arg3 : * mut u8) ; } extern "C" { pub fn r_magic_load (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_load_buffer (arg1 : * mut magic_set , arg2 : * const u8 , arg3 : usize) -> bool ; } extern "C" { pub fn r_magic_compile (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_check (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_errno (arg1 : * mut magic_set) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ascii_node_t { pub gnode : * mut RGraphNode , pub title : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , pub color : * mut :: std :: os :: raw :: c_char , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub layer : :: std :: os :: raw :: c_int , pub layer_height : :: std :: os :: raw :: c_int , pub layer_width : :: std :: os :: raw :: c_int , pub pos_in_layer : :: std :: os :: raw :: c_int , pub is_dummy : :: std :: os :: raw :: c_int , pub is_reversed : :: std :: os :: raw :: c_int , pub klass : :: std :: os :: raw :: c_int , pub difftype : :: std :: os :: raw :: c_int , pub is_mini : bool , } # [test] fn bindgen_test_layout_r_ascii_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_node_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_ascii_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gnode) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (gnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer_height) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer_height))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer_width) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer_width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos_in_layer) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (pos_in_layer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dummy) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_dummy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reversed) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_reversed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . klass) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (klass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . difftype) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (difftype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_mini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_mini))) ; } impl Default for r_ascii_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RANode = r_ascii_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_graph_hits_t { pub old_word : * mut :: std :: os :: raw :: c_char , pub word_list : RVector , pub word_nth : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_core_graph_hits_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_graph_hits_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_graph_hits_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_core_graph_hits_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_graph_hits_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_graph_hits_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_word) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (old_word))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (word_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_nth) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (word_nth))) ; } impl Default for r_core_graph_hits_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAGraphHits = r_core_graph_hits_t ; pub type RANodeCallback = :: std :: option :: Option < unsafe extern "C" fn (n : * mut RANode , user : * mut :: std :: os :: raw :: c_void) > ; pub type RAEdgeCallback = :: std :: option :: Option < unsafe extern "C" fn (from : * mut RANode , to : * mut RANode , user : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ascii_graph_t { pub can : * mut RConsCanvas , pub graph : * mut RGraph , pub curnode : * const RGraphNode , pub title : * mut :: std :: os :: raw :: c_char , pub db : * mut Sdb , pub nodes : * mut Sdb , pub layout : :: std :: os :: raw :: c_int , pub is_instep : :: std :: os :: raw :: c_int , pub is_tiny : bool , pub is_dis : bool , pub is_handmade : bool , pub edgemode : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub is_callgraph : bool , pub is_interactive : bool , pub zoom : :: std :: os :: raw :: c_int , pub movspeed : :: std :: os :: raw :: c_int , pub discroll : :: std :: os :: raw :: c_int , pub hints : bool , pub update_seek_on : * mut RANode , pub need_reload_nodes : bool , pub need_set_layout : bool , pub need_update_dim : :: std :: os :: raw :: c_int , pub force_update_seek : :: std :: os :: raw :: c_int , pub on_curnode_change : RANodeCallback , pub on_curnode_change_data : * mut :: std :: os :: raw :: c_void , pub dummy : bool , pub show_node_titles : bool , pub show_node_body : bool , pub show_node_bubble : bool , pub bb_maxwidth : :: std :: os :: raw :: c_int , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub back_edges : * mut RList , pub long_edges : * mut RList , pub layers : * mut layer_t , pub n_layers : :: std :: os :: raw :: c_uint , pub dists : * mut RList , pub edges : * mut RList , pub ghits : RAGraphHits , } # [test] fn bindgen_test_layout_r_ascii_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_graph_t > () , 264usize , concat ! ("Size of: " , stringify ! (r_ascii_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_graph_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . can) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (can))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curnode) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (curnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layout) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_instep) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_instep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_tiny) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_tiny))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dis) as usize - ptr as usize } , 57usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_dis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_handmade) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_handmade))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edgemode) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (edgemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_callgraph) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_callgraph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_interactive) as usize - ptr as usize } , 69usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_interactive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . movspeed) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (movspeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discroll) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (discroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hints) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update_seek_on) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (update_seek_on))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_reload_nodes) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_reload_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_set_layout) as usize - ptr as usize } , 97usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_set_layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_update_dim) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_update_dim))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_update_seek) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (force_update_seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_curnode_change) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (on_curnode_change))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_curnode_change_data) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (on_curnode_change_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dummy) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (dummy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_titles) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_titles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_body) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_bubble) as usize - ptr as usize } , 131usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_bubble))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_maxwidth) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (bb_maxwidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . back_edges) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (back_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . long_edges) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (long_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layers) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_layers) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (n_layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dists) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (dists))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edges) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ghits) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (ghits))) ; } impl Default for r_ascii_graph_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAGraph = r_ascii_graph_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_ascii_graph_transition_callbacks_t { pub get_title : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char > , pub get_body : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_r_ascii_graph_transition_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_graph_transition_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_graph_transition_callbacks_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_ascii_graph_transition_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_graph_transition_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_graph_transition_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_title) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_transition_callbacks_t) , "::" , stringify ! (get_title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_transition_callbacks_t) , "::" , stringify ! (get_body))) ; } pub type RAGraphTransitionCBs = r_ascii_graph_transition_callbacks_t ; extern "C" { pub fn r_agraph_new (can : * mut RConsCanvas) -> * mut RAGraph ; } extern "C" { pub fn r_agraph_free (g : * mut RAGraph) ; } extern "C" { pub fn r_agraph_reset (g : * mut RAGraph) ; } extern "C" { pub fn r_agraph_set_title (g : * mut RAGraph , title : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_agraph_get_first_node (g : * const RAGraph) -> * mut RANode ; } extern "C" { pub fn r_agraph_get_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char) -> * mut RANode ; } extern "C" { pub fn r_agraph_add_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , color : * const :: std :: os :: raw :: c_char) -> * mut RANode ; } extern "C" { pub fn r_agraph_del_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_agraph_add_edge (g : * const RAGraph , a : * mut RANode , b : * mut RANode , highlight : bool) ; } extern "C" { pub fn r_agraph_add_edge_at (g : * const RAGraph , a : * mut RANode , b : * mut RANode , nth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_agraph_del_edge (g : * const RAGraph , a : * mut RANode , b : * mut RANode) ; } extern "C" { pub fn r_agraph_print (g : * mut RAGraph , core : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_print_json (g : * mut RAGraph , pj : * mut PJ) ; } extern "C" { pub fn r_agraph_get_sdb (g : * mut RAGraph) -> * mut Sdb ; } extern "C" { pub fn r_agraph_foreach (g : * mut RAGraph , cb : RANodeCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_foreach_edge (g : * mut RAGraph , cb : RAEdgeCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_set_curnode (g : * mut RAGraph , node : * mut RANode) ; } extern "C" { pub fn r_agraph_new_from_graph (core : * mut :: std :: os :: raw :: c_void , graph : * const RGraph , cbs : * mut RAGraphTransitionCBs , user : * mut :: std :: os :: raw :: c_void) -> * mut RAGraph ; } pub const r_plugin_status_t_R_PLUGIN_STATUS_BROKEN : r_plugin_status_t = 0 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_INCOMPLETE : r_plugin_status_t = 1 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_BASIC : r_plugin_status_t = 2 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_OK : r_plugin_status_t = 3 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_GOOD : r_plugin_status_t = 4 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_COMPLETE : r_plugin_status_t = 5 ; pub type r_plugin_status_t = :: std :: os :: raw :: c_uint ; pub use self :: r_plugin_status_t as RPluginStatus ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_plugin_meta_t { pub name : * mut :: std :: os :: raw :: c_char , pub desc : * mut :: std :: os :: raw :: c_char , pub author : * mut :: std :: os :: raw :: c_char , pub version : * mut :: std :: os :: raw :: c_char , pub license : * mut :: std :: os :: raw :: c_char , pub contact : * mut :: std :: os :: raw :: c_char , pub copyright : * mut :: std :: os :: raw :: c_char , pub status : RPluginStatus , } # [test] fn bindgen_test_layout_r_plugin_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_plugin_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_plugin_meta_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_plugin_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_plugin_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_plugin_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . author) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (author))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . license) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (license))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contact) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (contact))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copyright) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (copyright))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (status))) ; } impl Default for r_plugin_meta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPluginMeta = r_plugin_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_plugin_t { pub type_ : :: std :: os :: raw :: c_int , pub file : * mut :: std :: os :: raw :: c_char , pub data : * mut :: std :: os :: raw :: c_void , pub handler : * mut r_lib_handler_t , pub dl_handler : * mut :: std :: os :: raw :: c_void , pub free : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_lib_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_plugin_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_lib_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dl_handler) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (dl_handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (name))) ; } impl Default for r_lib_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibPlugin = r_lib_plugin_t ; pub type RLibCallback = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RLibPlugin , user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_handler_t { pub type_ : :: std :: os :: raw :: c_int , pub desc : [:: std :: os :: raw :: c_char ; 128usize] , pub user : * mut :: std :: os :: raw :: c_void , pub constructor : RLibCallback , pub destructor : RLibCallback , } # [test] fn bindgen_test_layout_r_lib_handler_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_handler_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_handler_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_lib_handler_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_handler_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_handler_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constructor) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (constructor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destructor) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (destructor))) ; } impl Default for r_lib_handler_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibHandler = r_lib_handler_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_struct_t { pub type_ : :: std :: os :: raw :: c_int , pub data : * mut :: std :: os :: raw :: c_void , pub version : * const :: std :: os :: raw :: c_char , pub free : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > , pub pkgname : * const :: std :: os :: raw :: c_char , pub abiversion : u32 , } # [test] fn bindgen_test_layout_r_lib_struct_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_struct_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_struct_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_lib_struct_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_struct_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_struct_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkgname) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (pkgname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abiversion) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (abiversion))) ; } impl Default for r_lib_struct_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibStruct = r_lib_struct_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_t { pub symname : * mut :: std :: os :: raw :: c_char , pub symnamefunc : * mut :: std :: os :: raw :: c_char , pub plugins : * mut RList , pub handlers : * mut RList , pub handlers_bytype : [* mut RLibHandler ; 18usize] , pub ignore_version : bool , pub ignore_abiversion : bool , pub safe_loading : bool , pub plugins_ht : * mut [u64 ; 11usize] , pub abiversion : u32 , } # [test] fn bindgen_test_layout_r_lib_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_t > () , 200usize , concat ! ("Size of: " , stringify ! (r_lib_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (symname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symnamefunc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (symnamefunc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handlers) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (handlers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handlers_bytype) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (handlers_bytype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore_version) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (ignore_version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore_abiversion) as usize - ptr as usize } , 177usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (ignore_abiversion))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . safe_loading) as usize - ptr as usize } , 178usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (safe_loading))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins_ht) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (plugins_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abiversion) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (abiversion))) ; } impl Default for r_lib_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLib = r_lib_t ; extern "C" { pub fn r_lib_dl_open (libname : * const :: std :: os :: raw :: c_char , safe_mode : bool) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_lib_dl_sym (handler : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_lib_dl_close (handler : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lib_new (symname : * const :: std :: os :: raw :: c_char , symnamefunc : * const :: std :: os :: raw :: c_char) -> * mut RLib ; } extern "C" { pub fn r_lib_free (lib : * mut RLib) ; } extern "C" { pub fn r_lib_run_handler (lib : * mut RLib , plugin : * mut RLibPlugin , symbol : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_get_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int) -> * mut RLibHandler ; } extern "C" { pub fn r_lib_open (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_opendir (lib : * mut RLib , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_open_ptr (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char , handler : * mut :: std :: os :: raw :: c_void , stru : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_validate_plugin (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char , stru : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_get_loaded_plugins (lib : * mut RLib) -> * mut RList ; } extern "C" { pub fn r_lib_path (libname : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_lib_list (lib : * mut RLib) ; } extern "C" { pub fn r_lib_add_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int , desc : * const :: std :: os :: raw :: c_char , ct : RLibCallback , dt : RLibCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lib_del_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_lib_close (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_meta_pj (pj : * mut PJ , meta : * const RPluginMeta) ; } pub const __ptrace_request_PTRACE_TRACEME : __ptrace_request = 0 ; pub const __ptrace_request_PTRACE_PEEKTEXT : __ptrace_request = 1 ; pub const __ptrace_request_PTRACE_PEEKDATA : __ptrace_request = 2 ; pub const __ptrace_request_PTRACE_PEEKUSER : __ptrace_request = 3 ; pub const __ptrace_request_PTRACE_POKETEXT : __ptrace_request = 4 ; pub const __ptrace_request_PTRACE_POKEDATA : __ptrace_request = 5 ; pub const __ptrace_request_PTRACE_POKEUSER : __ptrace_request = 6 ; pub const __ptrace_request_PTRACE_CONT : __ptrace_request = 7 ; pub const __ptrace_request_PTRACE_KILL : __ptrace_request = 8 ; pub const __ptrace_request_PTRACE_SINGLESTEP : __ptrace_request = 9 ; pub const __ptrace_request_PTRACE_GETREGS : __ptrace_request = 12 ; pub const __ptrace_request_PTRACE_SETREGS : __ptrace_request = 13 ; pub const __ptrace_request_PTRACE_GETFPREGS : __ptrace_request = 14 ; pub const __ptrace_request_PTRACE_SETFPREGS : __ptrace_request = 15 ; pub const __ptrace_request_PTRACE_ATTACH : __ptrace_request = 16 ; pub const __ptrace_request_PTRACE_DETACH : __ptrace_request = 17 ; pub const __ptrace_request_PTRACE_GETFPXREGS : __ptrace_request = 18 ; pub const __ptrace_request_PTRACE_SETFPXREGS : __ptrace_request = 19 ; pub const __ptrace_request_PTRACE_SYSCALL : __ptrace_request = 24 ; pub const __ptrace_request_PTRACE_GET_THREAD_AREA : __ptrace_request = 25 ; pub const __ptrace_request_PTRACE_SET_THREAD_AREA : __ptrace_request = 26 ; pub const __ptrace_request_PTRACE_ARCH_PRCTL : __ptrace_request = 30 ; pub const __ptrace_request_PTRACE_SYSEMU : __ptrace_request = 31 ; pub const __ptrace_request_PTRACE_SYSEMU_SINGLESTEP : __ptrace_request = 32 ; pub const __ptrace_request_PTRACE_SINGLEBLOCK : __ptrace_request = 33 ; pub const __ptrace_request_PTRACE_SETOPTIONS : __ptrace_request = 16896 ; pub const __ptrace_request_PTRACE_GETEVENTMSG : __ptrace_request = 16897 ; pub const __ptrace_request_PTRACE_GETSIGINFO : __ptrace_request = 16898 ; pub const __ptrace_request_PTRACE_SETSIGINFO : __ptrace_request = 16899 ; pub const __ptrace_request_PTRACE_GETREGSET : __ptrace_request = 16900 ; pub const __ptrace_request_PTRACE_SETREGSET : __ptrace_request = 16901 ; pub const __ptrace_request_PTRACE_SEIZE : __ptrace_request = 16902 ; pub const __ptrace_request_PTRACE_INTERRUPT : __ptrace_request = 16903 ; pub const __ptrace_request_PTRACE_LISTEN : __ptrace_request = 16904 ; pub const __ptrace_request_PTRACE_PEEKSIGINFO : __ptrace_request = 16905 ; pub const __ptrace_request_PTRACE_GETSIGMASK : __ptrace_request = 16906 ; pub const __ptrace_request_PTRACE_SETSIGMASK : __ptrace_request = 16907 ; pub const __ptrace_request_PTRACE_SECCOMP_GET_FILTER : __ptrace_request = 16908 ; pub const __ptrace_request_PTRACE_SECCOMP_GET_METADATA : __ptrace_request = 16909 ; pub const __ptrace_request_PTRACE_GET_SYSCALL_INFO : __ptrace_request = 16910 ; pub const __ptrace_request_PTRACE_GET_RSEQ_CONFIGURATION : __ptrace_request = 16911 ; pub const __ptrace_request_PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG : __ptrace_request = 16912 ; pub const __ptrace_request_PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG : __ptrace_request = 16913 ; pub type __ptrace_request = :: std :: os :: raw :: c_uint ; pub use self :: __ptrace_request as r_ptrace_request_t ; pub type r_ptrace_data_t = * mut :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_undos_t { pub off : u64 , pub cursor : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_io_undos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_undos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undos_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cursor) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undos_t) , "::" , stringify ! (cursor))) ; } pub type RIOUndos = r_io_undos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_undo_t { pub s_enable : bool , pub w_enable : bool , pub w_list : * mut RList , pub w_init : :: std :: os :: raw :: c_int , pub idx : :: std :: os :: raw :: c_int , pub undos : :: std :: os :: raw :: c_int , pub redos : :: std :: os :: raw :: c_int , pub seek : [RIOUndos ; 64usize] , } # [test] fn bindgen_test_layout_r_io_undo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undo_t > () , 1056usize , concat ! ("Size of: " , stringify ! (r_io_undo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s_enable) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (s_enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_enable) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_init) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (undos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . redos) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (redos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (seek))) ; } impl Default for r_io_undo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOUndo = r_io_undo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_undo_w_t { pub set : bool , pub off : u64 , pub o : * mut u8 , pub n : * mut u8 , pub len : usize , } # [test] fn bindgen_test_layout_r_io_undo_w_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undo_w_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undo_w_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_io_undo_w_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undo_w_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undo_w_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . o) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (o))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (len))) ; } impl Default for r_io_undo_w_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOUndoWrite = r_io_undo_w_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_cache_layer_t { pub vec : * mut RPVector , pub tree : * mut RRBTree , } # [test] fn bindgen_test_layout_r_io_cache_layer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_cache_layer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_cache_layer_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_cache_layer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_cache_layer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_cache_layer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_layer_t) , "::" , stringify ! (vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_layer_t) , "::" , stringify ! (tree))) ; } impl Default for r_io_cache_layer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_cache_t { pub layers : * mut RList , pub mode : u32 , pub enabled : bool , } # [test] fn bindgen_test_layout_r_io_cache_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_cache_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_cache_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_cache_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_cache_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_cache_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (enabled))) ; } impl Default for r_io_cache_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOCache = r_io_cache_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_t { pub desc : * mut r_io_desc_t , pub off : u64 , pub bank : u32 , pub bits : :: std :: os :: raw :: c_int , pub va : :: std :: os :: raw :: c_int , pub ff : bool , pub Oxff : u8 , pub addrbytes : usize , pub autofd : bool , pub overlay : bool , pub cachemode : bool , pub p_cache : u32 , pub mts : u64 , pub files : RIDStorage , pub maps : RIDStorage , pub banks : RIDStorage , pub cache : RIOCache , pub write_mask : * mut u8 , pub write_mask_len : :: std :: os :: raw :: c_int , pub mask : u64 , pub undo : RIOUndo , pub plugins : * mut SdbList , pub nodup : bool , pub runprofile : * mut :: std :: os :: raw :: c_char , pub envprofile : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub event : * mut REvent , pub cb_printf : PrintfCallback , pub coreb : RCoreBind , pub want_ptrace_wrap : bool , pub ptrace_wrap : * mut ptrace_wrap_instance_t , } # [test] fn bindgen_test_layout_r_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_t > () , 1464usize , concat ! ("Size of: " , stringify ! (r_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (bank))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . va) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (va))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ff) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (ff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Oxff) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (Oxff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrbytes) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (addrbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autofd) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (autofd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay) as usize - ptr as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cachemode) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cachemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_cache) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (p_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mts) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (mts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . files) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (files))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . banks) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (banks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_mask) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (write_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_mask_len) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (write_mask_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undo) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (undo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 1224usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodup) as usize - ptr as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (nodup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . runprofile) as usize - ptr as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (runprofile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . envprofile) as usize - ptr as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (envprofile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event) as usize - ptr as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . want_ptrace_wrap) as usize - ptr as usize } , 1448usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (want_ptrace_wrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace_wrap) as usize - ptr as usize } , 1456usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (ptrace_wrap))) ; } impl Default for r_io_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIO = r_io_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_desc_t { pub fd : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub uri : * mut :: std :: os :: raw :: c_char , pub name : * mut :: std :: os :: raw :: c_char , pub referer : * mut :: std :: os :: raw :: c_char , pub cache : * mut [u64 ; 11usize] , pub data : * mut :: std :: os :: raw :: c_void , pub plugin : * mut r_io_plugin_t , pub io : * mut RIO , } # [test] fn bindgen_test_layout_r_io_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_desc_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_io_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uri) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (uri))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . referer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (referer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (io))) ; } impl Default for r_io_desc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIODesc = r_io_desc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_plugin_t { pub meta : RPluginMeta , pub data : * mut :: std :: os :: raw :: c_void , pub uris : * const :: std :: os :: raw :: c_char , pub listener : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub isdbg : bool , pub system : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , arg1 : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > , pub open : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc > , pub open_many : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList > , pub read : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub seek : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 > , pub write : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub is_blockdevice : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub is_chardevice : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub getpid : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub gettid : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub getbase : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc , base : * mut u64) -> bool > , pub resize : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , size : u64) -> bool > , pub extend : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , size : u64) -> bool > , pub accept : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , desc : * mut RIODesc , fd : :: std :: os :: raw :: c_int) -> bool > , pub create : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , file : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub check : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , many : bool) -> bool > , } # [test] fn bindgen_test_layout_r_io_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_plugin_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_io_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uris) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (uris))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . listener) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (listener))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isdbg) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (isdbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open_many) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (open_many))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_blockdevice) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (is_blockdevice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_chardevice) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (is_chardevice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getpid) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (getpid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gettid) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (gettid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getbase) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (getbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resize) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extend) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (extend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accept) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (accept))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . create) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (check))) ; } impl Default for r_io_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOPlugin = r_io_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_map_t { pub fd : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub id : u32 , pub ts : u64 , pub itv : RInterval , pub delta : u64 , pub overlay : * mut RRBTree , pub name : * mut :: std :: os :: raw :: c_char , pub tie_flags : u32 , pub meta : u32 , } # [test] fn bindgen_test_layout_r_io_map_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_map_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_map_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_io_map_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_map_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_map_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (ts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (itv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tie_flags) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (tie_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (meta))) ; } impl Default for r_io_map_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOMap = r_io_map_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_map_ref_t { pub id : u32 , pub ts : u64 , } # [test] fn bindgen_test_layout_r_io_map_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_map_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_map_ref_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_map_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_map_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_map_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_map_ref_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_map_ref_t) , "::" , stringify ! (ts))) ; } pub type RIOMapRef = r_io_map_ref_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_submap_t { pub mapref : RIOMapRef , pub itv : RInterval , } # [test] fn bindgen_test_layout_r_io_submap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_submap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_submap_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_io_submap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_submap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_submap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mapref) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_submap_t) , "::" , stringify ! (mapref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_submap_t) , "::" , stringify ! (itv))) ; } pub type RIOSubMap = r_io_submap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_bank_t { pub name : * mut :: std :: os :: raw :: c_char , pub submaps : * mut RRBTree , pub maprefs : * mut RList , pub todo : * mut RQueue , pub last_used : * mut RRBNode , pub id : u32 , pub drain_me : bool , } # [test] fn bindgen_test_layout_r_io_bank_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_bank_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_bank_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_io_bank_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_bank_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_bank_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . submaps) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (submaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maprefs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (maprefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . todo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_used) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (last_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . drain_me) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (drain_me))) ; } impl Default for r_io_bank_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOBank = r_io_bank_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_region_t { pub itv : RInterval , pub perm : u32 , } # [test] fn bindgen_test_layout_r_io_region_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_region_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_region_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_io_region_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_region_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_region_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_region_t) , "::" , stringify ! (itv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_region_t) , "::" , stringify ! (perm))) ; } pub type RIORegion = r_io_region_t ; pub type RIODescUse = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIODescGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RIODesc > ; pub type RIODescSize = :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> u64 > ; pub type RIOOpen = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc > ; pub type RIOOpenAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , at : u64) -> * mut RIODesc > ; pub type RIOClose = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOReadAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOOverlayWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOSystem = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RIOFdOpen = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdClose = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOFdSeek = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , whence : :: std :: os :: raw :: c_int) -> u64 > ; pub type RIOFdSize = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> u64 > ; pub type RIOFdResize = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , newsize : u64) -> bool > ; pub type RIOP2V = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , p : u64 , v : * mut u64) -> bool > ; pub type RIOV2P = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , va : u64) -> u64 > ; pub type RIOFdRead = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdWrite = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdReadAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdIsDbg = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOFdGetName = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char > ; pub type RIOFdGetMap = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RList > ; pub type RIOFdRemap = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64) -> bool > ; pub type RIOIsValidOff = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , hasperm : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOBankGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , bankid : u32) -> * mut RIOBank > ; pub type RIOBankUse = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , bankid : u32) -> bool > ; pub type RIOMapGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , id : u32) -> * mut RIOMap > ; pub type RIOMapGetAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64) -> * mut RIOMap > ; pub type RIOMapGetPaddr = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , paddr : u64) -> * mut RIOMap > ; pub type RIOAddrIsMapped = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64) -> bool > ; pub type RIOMapAdd = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap > ; pub type RIOPtraceFn = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , request : r_ptrace_request_t , pid : pid_t , addr : * mut :: std :: os :: raw :: c_void , data : r_ptrace_data_t) -> :: std :: os :: raw :: c_long > ; pub type RIOPtraceFuncFn = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , func : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_bind_t { pub init : :: std :: os :: raw :: c_int , pub io : * mut RIO , pub desc_use : RIODescUse , pub desc_get : RIODescGet , pub desc_size : RIODescSize , pub open : RIOOpen , pub open_at : RIOOpenAt , pub close : RIOClose , pub read_at : RIOReadAt , pub write_at : RIOWriteAt , pub overlay_write_at : RIOOverlayWriteAt , pub system : RIOSystem , pub fd_open : RIOFdOpen , pub fd_close : RIOFdClose , pub fd_seek : RIOFdSeek , pub fd_size : RIOFdSize , pub fd_resize : RIOFdResize , pub fd_read : RIOFdRead , pub fd_write : RIOFdWrite , pub fd_read_at : RIOFdReadAt , pub fd_write_at : RIOFdWriteAt , pub fd_is_dbg : RIOFdIsDbg , pub fd_get_name : RIOFdGetName , pub fd_get_map : RIOFdGetMap , pub fd_remap : RIOFdRemap , pub is_valid_offset : RIOIsValidOff , pub addr_is_mapped : RIOAddrIsMapped , pub bank_get : RIOBankGet , pub bank_use : RIOBankUse , pub map_get : RIOMapGet , pub map_get_at : RIOMapGetAt , pub map_get_paddr : RIOMapGetPaddr , pub map_add : RIOMapAdd , pub v2p : RIOV2P , pub p2v : RIOP2V , pub ptrace : RIOPtraceFn , pub ptrace_func : RIOPtraceFuncFn , } # [test] fn bindgen_test_layout_r_io_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_bind_t > () , 296usize , concat ! ("Size of: " , stringify ! (r_io_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_use) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_use))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_get) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open_at) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (open_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_at) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_at) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay_write_at) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (overlay_write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_open) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_close) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_seek) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_size) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_resize) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_read) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_write) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_read_at) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_write_at) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_is_dbg) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_is_dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_get_name) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_get_map) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_get_map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_remap) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_remap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_valid_offset) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (is_valid_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_is_mapped) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (addr_is_mapped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank_get) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (bank_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank_use) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (bank_use))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get_at) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get_paddr) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get_paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_add) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v2p) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (v2p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p2v) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (p2v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (ptrace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace_func) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (ptrace_func))) ; } impl Default for r_io_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOBind = r_io_bind_t ; extern "C" { pub fn r_io_map_init (io : * mut RIO) ; } extern "C" { pub fn r_io_map_remap (io : * mut RIO , id : u32 , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_remap_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_exists (io : * mut RIO , map : * mut RIOMap) -> bool ; } extern "C" { pub fn r_io_map_exists_for_id (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_get (io : * mut RIO , id : u32) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_add (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_add_bottom (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_get_at (io : * mut RIO , vaddr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_get_by_ref (io : * mut RIO , ref_ : * mut RIOMapRef) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_is_mapped (io : * mut RIO , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_get_paddr (io : * mut RIO , paddr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_map_del (io : * mut RIO , id : u32) ; } extern "C" { pub fn r_io_map_del_for_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_depriorize (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_priorize (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_priorize_for_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_cleanup (io : * mut RIO) ; } extern "C" { pub fn r_io_map_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_map_is_in_range (map : * mut RIOMap , from : u64 , to : u64) -> bool ; } extern "C" { pub fn r_io_map_set_name (map : * mut RIOMap , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_io_map_del_name (map : * mut RIOMap) ; } extern "C" { pub fn r_io_map_get_by_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_map_resize (io : * mut RIO , id : u32 , newsize : u64) -> bool ; } extern "C" { pub fn r_io_map_read_from_overlay (map : * mut RIOMap , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_map_write_to_overlay (map : * mut RIOMap , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_drain_overlay (map : * mut RIOMap) ; } pub type RIOMapOverlayForeach = :: std :: option :: Option < unsafe extern "C" fn (itv : RInterval , data : * const u8 , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_io_map_overlay_foreach (map : * mut RIOMap , cb : RIOMapOverlayForeach , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_io_map_locate (io : * mut RIO , addr : * mut u64 , size : u64 , load_align : u64) -> bool ; } extern "C" { pub fn r_io_p2v (io : * mut RIO , p : u64 , v : * mut u64) -> bool ; } extern "C" { pub fn r_io_v2p (io : * mut RIO , va : u64) -> u64 ; } extern "C" { pub fn r_io_submap_new (io : * mut RIO , mapref : * mut RIOMapRef) -> * mut RIOSubMap ; } extern "C" { pub fn r_io_submap_set_from (sm : * mut RIOSubMap , from : u64) -> bool ; } extern "C" { pub fn r_io_submap_set_to (sm : * mut RIOSubMap , to : u64) -> bool ; } extern "C" { pub fn r_io_bank_new (name : * const :: std :: os :: raw :: c_char) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_del (io : * mut RIO , bankid : u32) ; } extern "C" { pub fn r_io_bank_first (io : * mut RIO) -> u32 ; } extern "C" { pub fn r_io_bank_add (io : * mut RIO , bank : * mut RIOBank) -> bool ; } extern "C" { pub fn r_io_bank_clear (bank : * mut RIOBank) ; } extern "C" { pub fn r_io_bank_free (bank : * mut RIOBank) ; } extern "C" { pub fn r_io_bank_init (io : * mut RIO) ; } extern "C" { pub fn r_io_bank_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_bank_get (io : * mut RIO , bankid : u32) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_get_byname (io : * mut RIO , bankname : * const :: std :: os :: raw :: c_char) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_use (io : * mut RIO , bankid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_add_top (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_add_bottom (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_priorize (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_depriorize (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_update_map_boundaries (io : * mut RIO , bankid : u32 , mapid : u32 , ofrom : u64 , oto : u64) -> bool ; } extern "C" { pub fn r_io_bank_locate (io : * mut RIO , bankid : u32 , addr : * mut u64 , size : u64 , load_align : u64) -> bool ; } extern "C" { pub fn r_io_bank_del_map (io : * mut RIO , bankid : u32 , mapid : u32) ; } extern "C" { pub fn r_io_bank_get_map_at (io : * mut RIO , bankid : u32 , addr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_bank_read_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bank_write_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bank_write_to_overlay_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } pub type RIOOverlayForeach = :: std :: option :: Option < unsafe extern "C" fn (itv : RInterval , m_data : * const u8 , o_data : * const u8 , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_io_bank_overlay_foreach (io : * mut RIO , bankid : u32 , cb : RIOOverlayForeach , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_io_bank_read_from_submap_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_bank_write_to_submap_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_bank_drain (io : * mut RIO , bankid : u32) ; } extern "C" { pub fn r_io_bank_get_region_at (io : * mut RIO , bankid : u32 , region : * mut RIORegion , addr : u64) -> bool ; } extern "C" { pub fn r_io_new () -> * mut RIO ; } extern "C" { pub fn r_io_init (io : * mut RIO) ; } extern "C" { pub fn r_io_open_nomap (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_open_at (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , at : u64) -> * mut RIODesc ; } extern "C" { pub fn r_io_open_many (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_open_buffer (io : * mut RIO , b : * mut RBuffer , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_close (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_reopen (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_close_all (io : * mut RIO) ; } extern "C" { pub fn r_io_pread_at (io : * mut RIO , paddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_pwrite_at (io : * mut RIO , paddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_vread_at (io : * mut RIO , vaddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_vwrite_at (io : * mut RIO , vaddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_vwrite_to_overlay_at (io : * mut RIO , caddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_read_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_nread_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_write_at (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_read (io : * mut RIO , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_write (io : * mut RIO , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_size (io : * mut RIO) -> u64 ; } extern "C" { pub fn r_io_is_listener (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_system (io : * mut RIO , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_resize (io : * mut RIO , newsize : u64) -> bool ; } extern "C" { pub fn r_io_extend_at (io : * mut RIO , addr : u64 , size : u64) -> bool ; } extern "C" { pub fn r_io_set_write_mask (io : * mut RIO , mask : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bind (io : * mut RIO , bnd : * mut RIOBind) ; } extern "C" { pub fn r_io_shift (io : * mut RIO , start : u64 , end : u64 , move_ : i64) -> bool ; } extern "C" { pub fn r_io_seek (io : * mut RIO , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_drain_overlay (io : * mut RIO) ; } extern "C" { pub fn r_io_get_region_at (io : * mut RIO , region : * mut RIORegion , addr : u64) -> bool ; } extern "C" { pub fn r_io_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_free (io : * mut RIO) ; } extern "C" { pub fn r_io_plugin_init (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_plugin_add (io : * mut RIO , plugin : * mut RIOPlugin) -> bool ; } extern "C" { pub fn r_io_plugin_remove (io : * mut RIO , plugin : * mut RIOPlugin) -> bool ; } extern "C" { pub fn r_io_plugin_read (desc : * mut RIODesc , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_write (desc : * mut RIODesc , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_read_at (desc : * mut RIODesc , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_write_at (desc : * mut RIODesc , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_resolve (io : * mut RIO , filename : * const :: std :: os :: raw :: c_char , many : bool) -> * mut RIOPlugin ; } extern "C" { pub fn r_io_plugin_get_default (io : * mut RIO , filename : * const :: std :: os :: raw :: c_char , many : bool) -> * mut RIOPlugin ; } extern "C" { pub fn r_io_undo_init (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_undo_enable (io : * mut RIO , seek : :: std :: os :: raw :: c_int , write : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_sundo (io : * mut RIO , offset : u64) -> * mut RIOUndos ; } extern "C" { pub fn r_io_sundo_redo (io : * mut RIO) -> * mut RIOUndos ; } extern "C" { pub fn r_io_sundo_push (io : * mut RIO , off : u64 , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_sundo_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_sundo_list (io : * mut RIO , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_wundo_new (io : * mut RIO , off : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_apply_all (io : * mut RIO , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_apply (io : * mut RIO , u : * mut r_io_undo_w_t , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_clear (io : * mut RIO) ; } extern "C" { pub fn r_io_wundo_size (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_list (io : * mut RIO) ; } extern "C" { pub fn r_io_wundo_set_t (io : * mut RIO , u : * mut RIOUndoWrite , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_set_all (io : * mut RIO , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_set (io : * mut RIO , n : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_new (io : * mut RIO , plugin : * mut RIOPlugin , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , data : * mut :: std :: os :: raw :: c_void) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_open_plugin (io : * mut RIO , plugin : * mut RIOPlugin , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_close (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_read (desc : * mut RIODesc , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_write (desc : * mut RIODesc , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_free (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_add (io : * mut RIO , desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_del (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_desc_get (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_byuri (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_next (io : * mut RIO , desc : * mut RIODesc) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_prev (io : * mut RIO , desc : * mut RIODesc) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_highest (io : * mut RIO) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_lowest (io : * mut RIO) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_seek (desc : * mut RIODesc , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_desc_size (desc : * mut RIODesc) -> u64 ; } extern "C" { pub fn r_io_desc_resize (desc : * mut RIODesc , newsize : u64) -> bool ; } extern "C" { pub fn r_io_desc_system (desc : * mut RIODesc , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_desc_is_blockdevice (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_is_chardevice (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_exchange (io : * mut RIO , fd : :: std :: os :: raw :: c_int , fdx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_desc_is_dbg (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_get_pid (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_get_tid (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_get_base (desc : * mut RIODesc , base : * mut u64) -> bool ; } extern "C" { pub fn r_io_desc_read_at (desc : * mut RIODesc , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_write_at (desc : * mut RIODesc , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_init (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_desc_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_init (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_list (io : * mut RIO , rad : :: std :: os :: raw :: c_int , many : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_cache_empty (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_at (io : * mut RIO , addr : u64) -> bool ; } extern "C" { pub fn r_io_cache_writable (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_write_at (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_cache_read_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_cache_invalidate (io : * mut RIO , from : u64 , to : u64 , many : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_cache_commit (io : * mut RIO , from : u64 , to : u64 , many : bool) ; } extern "C" { pub fn r_io_cache_push (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_pop (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_undo (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_redo (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_desc_cache_init (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_cache_write (desc : * mut RIODesc , paddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_cache_read (desc : * mut RIODesc , paddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_cache_commit (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_cache_cleanup (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_cache_fini (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_cache_fini_all (io : * mut RIO) ; } extern "C" { pub fn r_io_desc_cache_list (desc : * mut RIODesc) -> * mut RList ; } extern "C" { pub fn r_io_desc_extend (desc : * mut RIODesc , size : u64) -> bool ; } extern "C" { pub fn r_io_fd_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_close (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_read (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_write (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_seek (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_fd_size (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_fd_resize (io : * mut RIO , fd : :: std :: os :: raw :: c_int , newsize : u64) -> bool ; } extern "C" { pub fn r_io_fd_system (io : * mut RIO , fd : :: std :: os :: raw :: c_int , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_fd_is_blockdevice (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_is_chardevice (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_read_at (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_write_at (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_is_dbg (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_get_pid (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_tid (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_base (io : * mut RIO , fd : :: std :: os :: raw :: c_int , base : * mut u64) -> bool ; } extern "C" { pub fn r_io_fd_get_name (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_fd_get_current (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_use_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_get_next (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_prev (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_highest (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_lowest (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_map_setattr_fromstring (map : * mut RIOMap , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_io_map_setattr (map : * mut RIOMap , type_ : u32 , flags : u32) -> bool ; } extern "C" { pub fn r_io_map_getattr (map : * mut RIOMap) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_is_valid_offset (io : * mut RIO , offset : u64 , hasperm : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_addr_is_mapped (io : * mut RIO , vaddr : u64) -> bool ; } extern "C" { pub fn r_io_read_i (io : * mut RIO , addr : u64 , val : * mut u64 , size : :: std :: os :: raw :: c_int , endian : bool) -> bool ; } extern "C" { pub fn r_io_write_i (io : * mut RIO , addr : u64 , val : * mut u64 , size : :: std :: os :: raw :: c_int , endian : bool) -> bool ; } extern "C" { pub fn r_io_ptrace (io : * mut RIO , request : r_ptrace_request_t , pid : pid_t , addr : * mut :: std :: os :: raw :: c_void , data : r_ptrace_data_t) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn r_io_ptrace_fork (io : * mut RIO , child_callback : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , child_callback_user : * mut :: std :: os :: raw :: c_void) -> pid_t ; } extern "C" { pub fn r_io_ptrace_func (io : * mut RIO , func : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_t { pub iob : RIOBind , pub cob : RCoreBind , pub csb : RConsBind , pub plugins : * mut RList , pub roots : * mut RList , pub view : :: std :: os :: raw :: c_int , pub ptr : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_fs_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_t > () , 560usize , concat ! ("Size of: " , stringify ! (r_fs_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cob) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (cob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . csb) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (csb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . roots) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (roots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . view) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (view))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (ptr))) ; } impl Default for r_fs_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFS = r_fs_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_file_t { pub name : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub off : u64 , pub size : u32 , pub data : * mut u8 , pub ctx : * mut :: std :: os :: raw :: c_void , pub type_ : :: std :: os :: raw :: c_char , pub uid : u32 , pub gid : u32 , pub perm : u32 , pub time : u64 , pub p : * mut r_fs_plugin_t , pub root : * mut r_fs_root_t , pub ptr : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_fs_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_file_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_fs_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_file_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctx) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (ptr))) ; } impl Default for r_fs_file_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSFile = r_fs_file_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_root_t { pub path : * mut :: std :: os :: raw :: c_char , pub delta : u64 , pub p : * mut r_fs_plugin_t , pub ptr : * mut :: std :: os :: raw :: c_void , pub iob : RIOBind , pub cob : RCoreBind , } # [test] fn bindgen_test_layout_r_fs_root_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_root_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_root_t > () , 496usize , concat ! ("Size of: " , stringify ! (r_fs_root_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_root_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_root_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cob) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (cob))) ; } impl Default for r_fs_root_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSRoot = r_fs_root_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_plugin_t { pub meta : RPluginMeta , pub slurp : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile > , pub open : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char , create : bool) -> * mut RFSFile > , pub unlink : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> bool > , pub write : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub read : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile) > , pub dir : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char , view : :: std :: os :: raw :: c_int) -> * mut RList > , pub mkdir : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> bool > , pub init : :: std :: option :: Option < unsafe extern "C" fn () -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn () > , pub mount : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot) -> bool > , pub umount : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot) > , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFS , cmd : * const :: std :: os :: raw :: c_char) -> bool > , pub details : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , sb : * mut RStrBuf) > , } # [test] fn bindgen_test_layout_r_fs_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_plugin_t > () , 176usize , concat ! ("Size of: " , stringify ! (r_fs_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurp) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (slurp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unlink) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (unlink))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mkdir) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (mkdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mount) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (mount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . umount) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (umount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . details) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (details))) ; } impl Default for r_fs_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSPlugin = r_fs_plugin_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_fs_partition_t { pub number : :: std :: os :: raw :: c_int , pub start : u64 , pub length : u64 , pub index : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_fs_partition_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_partition_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_partition_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_fs_partition_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_partition_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_partition_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (type_))) ; } pub type RFSPartition = r_fs_partition_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_shell_t { pub cons : * mut RCons , pub cwd : * mut :: std :: os :: raw :: c_char , pub set_prompt : :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine , prompt : * const :: std :: os :: raw :: c_char) > , pub readline : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) -> * const :: std :: os :: raw :: c_char > , pub hist_add : :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine , text : * const :: std :: os :: raw :: c_char) -> bool > , } # [test] fn bindgen_test_layout_r_fs_shell_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_shell_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_shell_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_fs_shell_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_shell_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_shell_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cwd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_prompt) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (set_prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readline) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (readline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_add) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (hist_add))) ; } impl Default for r_fs_shell_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSShell = r_fs_shell_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_type_t { pub name : * const :: std :: os :: raw :: c_char , pub bufoff : :: std :: os :: raw :: c_int , pub buf : * const :: std :: os :: raw :: c_char , pub buflen : :: std :: os :: raw :: c_int , pub byteoff : :: std :: os :: raw :: c_int , pub byte : u8 , pub bytelen : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_fs_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_type_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_fs_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bufoff) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (bufoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buflen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (buflen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byteoff) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (byteoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byte) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytelen) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (bytelen))) ; } impl Default for r_fs_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSType = r_fs_type_t ; extern "C" { pub fn r_fs_new () -> * mut RFS ; } extern "C" { pub fn r_fs_free (fs : * mut RFS) ; } extern "C" { pub fn r_fs_view (fs : * mut RFS , view : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_fs_plugin_add (fs : * mut RFS , p : * mut RFSPlugin) -> bool ; } extern "C" { pub fn r_fs_plugin_remove (fs : * mut RFS , p : * mut RFSPlugin) -> bool ; } extern "C" { pub fn r_fs_del (fs : * mut RFS , p : * mut RFSPlugin) ; } extern "C" { pub fn r_fs_mount (fs : * mut RFS , fstype : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RFSRoot ; } extern "C" { pub fn r_fs_umount (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_open (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char , create : bool) -> * mut RFSFile ; } extern "C" { pub fn r_fs_close (fs : * mut RFS , file : * mut RFSFile) ; } extern "C" { pub fn r_fs_read (fs : * mut RFS , file : * mut RFSFile , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_fs_write (fs : * mut RFS , file : * mut RFSFile , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_fs_slurp (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile ; } extern "C" { pub fn r_fs_dir (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_dir_dump (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_mkdir (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_find_name (fs : * mut RFS , name : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_find_off (fs : * mut RFS , name : * const :: std :: os :: raw :: c_char , off : u64) -> * mut RList ; } extern "C" { pub fn r_fs_partitions (fs : * mut RFS , ptype : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RList ; } extern "C" { pub fn r_fs_type_index (i : :: std :: os :: raw :: c_int) -> * const RFSType ; } extern "C" { pub fn r_fs_name (fs : * mut RFS , offset : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_check (fs : * mut RFS , p : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_shell (shell : * mut RFSShell , fs : * mut RFS , root : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_file_new (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile ; } extern "C" { pub fn r_fs_file_free (file : * mut RFSFile) ; } extern "C" { pub fn r_fs_file_copy_abs_path (file : * mut RFSFile) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_cmd (fs : * mut RFS , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_root (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_root_new (path : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RFSRoot ; } extern "C" { pub fn r_fs_root_free (root : * mut RFSRoot) ; } extern "C" { pub fn r_fs_partition_new (num : :: std :: os :: raw :: c_int , start : u64 , length : u64) -> * mut RFSPartition ; } extern "C" { pub fn r_fs_partition_free (p : * mut RFSPartition) ; } extern "C" { pub fn r_fs_partition_type (part : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_partition_type_get (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } pub type RBin = r_bin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinAddrline { pub addr : u64 , pub file : * const :: std :: os :: raw :: c_char , pub path : * const :: std :: os :: raw :: c_char , pub line : u32 , pub column : u32 , } # [test] fn bindgen_test_layout_RBinAddrline () { const UNINIT : :: std :: mem :: MaybeUninit < RBinAddrline > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinAddrline > () , 32usize , concat ! ("Size of: " , stringify ! (RBinAddrline))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinAddrline > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinAddrline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . column) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (column))) ; } impl Default for RBinAddrline { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBinDwarfAttrDef { pub attr_name : u64 , pub attr_form : u64 , pub special : i64 , } # [test] fn bindgen_test_layout_RBinDwarfAttrDef () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfAttrDef > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfAttrDef > () , 24usize , concat ! ("Size of: " , stringify ! (RBinDwarfAttrDef))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfAttrDef > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfAttrDef))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (attr_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_form) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (attr_form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . special) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (special))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfBlock { pub length : u64 , pub data : * mut u8 , } # [test] fn bindgen_test_layout_RBinDwarfBlock () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfBlock > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfBlock > () , 16usize , concat ! ("Size of: " , stringify ! (RBinDwarfBlock))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfBlock > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfBlock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfBlock) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfBlock) , "::" , stringify ! (data))) ; } impl Default for RBinDwarfBlock { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RBinDwarfAttrKind_DW_AT_KIND_ADDRESS : RBinDwarfAttrKind = 0 ; pub const RBinDwarfAttrKind_DW_AT_KIND_BLOCK : RBinDwarfAttrKind = 1 ; pub const RBinDwarfAttrKind_DW_AT_KIND_CONSTANT : RBinDwarfAttrKind = 2 ; pub const RBinDwarfAttrKind_DW_AT_KIND_EXPRLOC : RBinDwarfAttrKind = 3 ; pub const RBinDwarfAttrKind_DW_AT_KIND_FLAG : RBinDwarfAttrKind = 4 ; pub const RBinDwarfAttrKind_DW_AT_KIND_LINEPTR : RBinDwarfAttrKind = 5 ; pub const RBinDwarfAttrKind_DW_AT_KIND_LOCLISTPTR : RBinDwarfAttrKind = 6 ; pub const RBinDwarfAttrKind_DW_AT_KIND_MACPTR : RBinDwarfAttrKind = 7 ; pub const RBinDwarfAttrKind_DW_AT_KIND_RANGELISTPTR : RBinDwarfAttrKind = 8 ; pub const RBinDwarfAttrKind_DW_AT_KIND_REFERENCE : RBinDwarfAttrKind = 9 ; pub const RBinDwarfAttrKind_DW_AT_KIND_STRING : RBinDwarfAttrKind = 10 ; pub type RBinDwarfAttrKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct dwarf_attr_kind { pub attr_name : u64 , pub attr_form : u64 , pub kind : RBinDwarfAttrKind , pub __bindgen_anon_1 : dwarf_attr_kind__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union dwarf_attr_kind__bindgen_ty_1 { pub address : u64 , pub uconstant : u64 , pub sconstant : i64 , pub flag : u8 , pub reference : u64 , pub block : RBinDwarfBlock , pub string : dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 { pub offset : u64 , pub content : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (content))) ; } impl Default for dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_dwarf_attr_kind__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uconstant) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (uconstant))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sconstant) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (sconstant))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reference) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (reference))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (string))) ; } impl Default for dwarf_attr_kind__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_dwarf_attr_kind () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind > () , 40usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (attr_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_form) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (attr_form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (kind))) ; } impl Default for dwarf_attr_kind { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinDwarfAttrValue = dwarf_attr_kind ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBinDwarfCompUnitHdr { pub length : u64 , pub version : u16 , pub abbrev_offset : u64 , pub address_size : u8 , pub unit_type : u8 , pub dwo_id : u8 , pub type_sig : u64 , pub type_offset : u64 , pub header_size : u64 , pub unit_offset : u64 , pub is_64bit : bool , } # [test] fn bindgen_test_layout_RBinDwarfCompUnitHdr () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfCompUnitHdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfCompUnitHdr > () , 72usize , concat ! ("Size of: " , stringify ! (RBinDwarfCompUnitHdr))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfCompUnitHdr > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfCompUnitHdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abbrev_offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (abbrev_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unit_type) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (unit_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwo_id) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (dwo_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_sig) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (type_sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_offset) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (type_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . header_size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (header_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unit_offset) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (unit_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_64bit) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (is_64bit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDie { pub tag : u64 , pub abbrev_code : u64 , pub count : usize , pub capacity : usize , pub offset : u64 , pub has_children : bool , pub attr_values : * mut RBinDwarfAttrValue , } # [test] fn bindgen_test_layout_RBinDwarfDie () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDie > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDie > () , 56usize , concat ! ("Size of: " , stringify ! (RBinDwarfDie))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDie > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDie))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abbrev_code) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (abbrev_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_children) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (has_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_values) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (attr_values))) ; } impl Default for RBinDwarfDie { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfCompUnit { pub hdr : RBinDwarfCompUnitHdr , pub offset : u64 , pub count : usize , pub capacity : usize , pub dies : * mut RBinDwarfDie , } # [test] fn bindgen_test_layout_RBinDwarfCompUnit () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfCompUnit > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfCompUnit > () , 104usize , concat ! ("Size of: " , stringify ! (RBinDwarfCompUnit))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfCompUnit > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfCompUnit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hdr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (hdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dies) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (dies))) ; } impl Default for RBinDwarfCompUnit { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDebugInfo { pub count : usize , pub capacity : usize , pub comp_units : * mut RBinDwarfCompUnit , pub lookup_table : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_RBinDwarfDebugInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDebugInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDebugInfo > () , 32usize , concat ! ("Size of: " , stringify ! (RBinDwarfDebugInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDebugInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDebugInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_units) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (comp_units))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lookup_table) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (lookup_table))) ; } impl Default for RBinDwarfDebugInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfAbbrevDecl { pub code : u64 , pub tag : u64 , pub offset : u64 , pub has_children : u8 , pub count : usize , pub capacity : usize , pub defs : * mut RBinDwarfAttrDef , } # [test] fn bindgen_test_layout_RBinDwarfAbbrevDecl () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfAbbrevDecl > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfAbbrevDecl > () , 56usize , concat ! ("Size of: " , stringify ! (RBinDwarfAbbrevDecl))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfAbbrevDecl > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfAbbrevDecl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_children) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (has_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defs) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (defs))) ; } impl Default for RBinDwarfAbbrevDecl { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDebugAbbrev { pub count : usize , pub capacity : usize , pub decls : * mut RBinDwarfAbbrevDecl , } # [test] fn bindgen_test_layout_RBinDwarfDebugAbbrev () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDebugAbbrev > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDebugAbbrev > () , 24usize , concat ! ("Size of: " , stringify ! (RBinDwarfDebugAbbrev))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDebugAbbrev > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDebugAbbrev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decls) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (decls))) ; } impl Default for RBinDwarfDebugAbbrev { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_bin_dwarf_parse_aranges (a : * mut RBin , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_dwarf_parse_line (a : * mut RBin , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_dwarf_parse_abbrev (a : * mut RBin , mode : :: std :: os :: raw :: c_int) -> * mut RBinDwarfDebugAbbrev ; } extern "C" { pub fn r_bin_dwarf_parse_info (a : * mut RBin , da : * mut RBinDwarfDebugAbbrev , mode : :: std :: os :: raw :: c_int) -> * mut RBinDwarfDebugInfo ; } extern "C" { pub fn r_bin_dwarf_parse_loc (bin : * mut RBin , addr_size : :: std :: os :: raw :: c_int) -> * mut [u64 ; 11usize] ; } extern "C" { pub fn r_bin_dwarf_print_loc (loc_table : * mut [u64 ; 11usize] , addr_size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_dwarf_free_loc (loc_table : * mut [u64 ; 11usize]) ; } extern "C" { pub fn r_bin_dwarf_free_debug_info (inf : * mut RBinDwarfDebugInfo) ; } extern "C" { pub fn r_bin_dwarf_free_debug_abbrev (da : * mut RBinDwarfDebugAbbrev) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct R_PDB7_ROOT_STREAM { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pdb_t { pub pdb_parse : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t) -> bool > , pub finish_pdb_parse : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t) > , pub print_types : :: std :: option :: Option < unsafe extern "C" fn (pdb : * const r_pdb_t , pj : * mut PJ , mode : :: std :: os :: raw :: c_int) > , pub cb_printf : PrintfCallback , pub root_stream : * mut R_PDB7_ROOT_STREAM , pub stream_map : * mut :: std :: os :: raw :: c_void , pub pdb_streams : * mut RList , pub pdb_streams2 : * mut RList , pub buf : * mut RBuffer , pub print_gvars : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t , img_base : u64 , pj : * mut PJ , format : :: std :: os :: raw :: c_int) > , } # [test] fn bindgen_test_layout_r_pdb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pdb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pdb_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_pdb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pdb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pdb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_parse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . finish_pdb_parse) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (finish_pdb_parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_types) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (print_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root_stream) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (root_stream))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stream_map) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (stream_map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_streams) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_streams))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_streams2) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_streams2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_gvars) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (print_gvars))) ; } impl Default for r_pdb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinPdb = r_pdb_t ; extern "C" { pub fn r_bin_pdb_parser (pdb : * mut RBinPdb , filename : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_pdb_parser_with_buf (pdb : * mut RBinPdb , buf : * mut RBuffer) -> bool ; } pub type RBinAttribute = u64 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_addr_t { pub vaddr : u64 , pub paddr : u64 , pub hvaddr : u64 , pub hpaddr : u64 , pub type_ : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_addr_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_addr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_addr_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_addr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_addr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_addr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hvaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (hvaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpaddr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (hpaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (bits))) ; } pub type RBinAddr = r_bin_addr_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_name_t { pub name : * mut :: std :: os :: raw :: c_char , pub oname : * mut :: std :: os :: raw :: c_char , pub fname : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_name_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_name_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_name_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_bin_name_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_name_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_name_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (oname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (fname))) ; } impl Default for r_bin_name_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinName = r_bin_name_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_hash_t { pub type_ : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub len : :: std :: os :: raw :: c_int , pub from : u64 , pub to : u64 , pub buf : [u8 ; 32usize] , pub cmd : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_hash_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_bin_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (cmd))) ; } impl Default for r_bin_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinHash = r_bin_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_hash_t { pub type_ : * const :: std :: os :: raw :: c_char , pub hex : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_file_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_hash_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bin_file_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_hash_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_hash_t) , "::" , stringify ! (hex))) ; } impl Default for r_bin_file_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinFileHash = r_bin_file_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_info_t { pub file : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub bclass : * mut :: std :: os :: raw :: c_char , pub rclass : * mut :: std :: os :: raw :: c_char , pub arch : * mut :: std :: os :: raw :: c_char , pub cpu : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , pub flags : * mut :: std :: os :: raw :: c_char , pub abi : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub subsystem : * mut :: std :: os :: raw :: c_char , pub rpath : * mut :: std :: os :: raw :: c_char , pub guid : * mut :: std :: os :: raw :: c_char , pub debug_file_name : * mut :: std :: os :: raw :: c_char , pub lang : * const :: std :: os :: raw :: c_char , pub default_cc : * mut :: std :: os :: raw :: c_char , pub file_hashes : * mut RList , pub bits : :: std :: os :: raw :: c_int , pub has_retguard : :: std :: os :: raw :: c_int , pub has_va : bool , pub has_pi : bool , pub has_canary : bool , pub has_sanitizers : bool , pub has_crypto : bool , pub has_nx : bool , pub has_nobtcfi : bool , pub has_libinjprot : bool , pub big_endian : :: std :: os :: raw :: c_int , pub has_lit : bool , pub actual_checksum : * mut :: std :: os :: raw :: c_char , pub claimed_checksum : * mut :: std :: os :: raw :: c_char , pub pe_overlay : :: std :: os :: raw :: c_int , pub signature : bool , pub dbg_info : u64 , pub sum : [RBinHash ; 3usize] , pub baddr : u64 , pub intrp : * mut :: std :: os :: raw :: c_char , pub compiler : * mut :: std :: os :: raw :: c_char , pub charset : * mut :: std :: os :: raw :: c_char , pub dbglink : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_info_t > () , 472usize , concat ! ("Size of: " , stringify ! (r_bin_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bclass) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (bclass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rclass) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (rclass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (machine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subsystem) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (subsystem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rpath) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (rpath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . guid) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (guid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debug_file_name) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (debug_file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_cc) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (default_cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_hashes) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (file_hashes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_retguard) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_retguard))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_va) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_va))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_pi) as usize - ptr as usize } , 145usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_pi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_canary) as usize - ptr as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_canary))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_sanitizers) as usize - ptr as usize } , 147usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_sanitizers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_crypto) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_nx) as usize - ptr as usize } , 149usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_nx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_nobtcfi) as usize - ptr as usize } , 150usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_nobtcfi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_libinjprot) as usize - ptr as usize } , 151usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_libinjprot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_lit) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_lit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . actual_checksum) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (actual_checksum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . claimed_checksum) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (claimed_checksum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pe_overlay) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (pe_overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg_info) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (dbg_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sum) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . intrp) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (intrp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . compiler) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (compiler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charset) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbglink) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (dbglink))) ; } impl Default for r_bin_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinInfo = r_bin_info_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_symbol_t { pub name : * mut RBinName , pub classname : * mut :: std :: os :: raw :: c_char , pub libname : * mut :: std :: os :: raw :: c_char , pub forwarder : * const :: std :: os :: raw :: c_char , pub bind : * const :: std :: os :: raw :: c_char , pub type_ : * const :: std :: os :: raw :: c_char , pub rtype : * const :: std :: os :: raw :: c_char , pub is_imported : bool , pub vaddr : u64 , pub paddr : u64 , pub size : u32 , pub ordinal : u32 , pub lang : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub attr : RBinAttribute , pub dup_count : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_symbol_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_bin_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_symbol_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (classname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forwarder) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (forwarder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bind) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtype) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (rtype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_imported) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (is_imported))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ordinal) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (ordinal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup_count) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (dup_count))) ; } impl Default for r_bin_symbol_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinSymbol = r_bin_symbol_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_section_t { pub name : * mut :: std :: os :: raw :: c_char , pub size : u64 , pub vsize : u64 , pub vaddr : u64 , pub paddr : u64 , pub perm : u32 , pub flags : u32 , pub type_ : * const :: std :: os :: raw :: c_char , pub arch : * const :: std :: os :: raw :: c_char , pub format : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub has_strings : bool , pub add : bool , pub is_data : bool , pub is_segment : bool , pub backing_fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_section_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_section_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_section_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_section_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_section_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_section_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vsize) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (vsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_strings) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (has_strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . add) as usize - ptr as usize } , 77usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_data) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (is_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_segment) as usize - ptr as usize } , 79usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (is_segment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . backing_fd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (backing_fd))) ; } impl Default for r_bin_section_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinSection = r_bin_section_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_import_t { pub name : * mut RBinName , pub libname : * mut :: std :: os :: raw :: c_char , pub bind : * const :: std :: os :: raw :: c_char , pub type_ : * const :: std :: os :: raw :: c_char , pub classname : * mut :: std :: os :: raw :: c_char , pub descriptor : * mut :: std :: os :: raw :: c_char , pub ordinal : u32 , pub in_shdr : bool , pub is_sht_null : bool , pub is_vaddr : bool , pub is_imported : bool , } # [test] fn bindgen_test_layout_r_bin_import_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_import_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_import_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_bin_import_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_import_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_import_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classname) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (classname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . descriptor) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (descriptor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ordinal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (ordinal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_shdr) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (in_shdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_sht_null) as usize - ptr as usize } , 53usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_sht_null))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_vaddr) as usize - ptr as usize } , 54usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_imported) as usize - ptr as usize } , 55usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_imported))) ; } impl Default for r_bin_import_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinImport = r_bin_import_t ; extern "C" { pub fn r_bin_symbol_fini (sym : * mut RBinSymbol) ; } extern "C" { pub fn r_bin_import_fini (sym : * mut RBinImport) ; } pub type RVecRBinImport = r_vec_RVecRBinImport_t ; pub type RVecRBinSymbol = r_vec_RVecRBinSymbol_t ; pub type RVecRBinSection = r_vec_RVecRBinSection_t ; pub type RVecRBinEntry = r_vec_RVecRBinEntry_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_bin_object_t { pub baddr : u64 , pub baddr_shift : i64 , pub loadaddr : u64 , pub boffset : u64 , pub size : u64 , pub obj_size : u64 , pub pool : * mut RStrpool , pub sections : * mut RList , pub imports : * mut RList , pub symbols : * mut RList , pub imports_vec : RVecRBinImport , pub symbols_vec : RVecRBinSymbol , pub sections_vec : RVecRBinSection , pub entries_vec : RVecRBinEntry , pub entries : * mut RList , pub fields : * mut RList , pub libs : * mut RList , pub relocs : * mut RRBTree , pub strings : * mut RList , pub classes : * mut RList , pub classes_ht : * mut [u64 ; 11usize] , pub methods_ht : * mut [u64 ; 11usize] , pub lines : * mut RList , pub strings_db : * mut [u64 ; 11usize] , pub mem : * mut RList , pub maps : * mut RList , pub regstate : * mut :: std :: os :: raw :: c_char , pub info : * mut RBinInfo , pub binsym : [* mut RBinAddr ; 4usize] , pub plugin : * mut r_bin_plugin_t , pub lang : :: std :: os :: raw :: c_int , pub kv : * mut Sdb , pub addr2klassmethod : * mut [u64 ; 11usize] , pub filters : * mut :: std :: os :: raw :: c_void , pub bin_obj : * mut :: std :: os :: raw :: c_void , pub is_reloc_patched : bool , } # [test] fn bindgen_test_layout_r_bin_object_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_object_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_object_t > () , 416usize , concat ! ("Size of: " , stringify ! (r_bin_object_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_object_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_bin_object_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr_shift) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (baddr_shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . boffset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (boffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obj_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (obj_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports_vec) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (imports_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols_vec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (symbols_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections_vec) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (sections_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries_vec) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (entries_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libs) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . relocs) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes_ht) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (classes_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods_ht) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (methods_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings_db) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (strings_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regstate) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (regstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binsym) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (binsym))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kv) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (kv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr2klassmethod) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (addr2klassmethod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filters) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (filters))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_obj) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (bin_obj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reloc_patched) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (is_reloc_patched))) ; } impl Default for r_bin_object_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinObject = r_bin_object_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_options_t { pub pluginname : * const :: std :: os :: raw :: c_char , pub baseaddr : u64 , pub loadaddr : u64 , pub sz : u64 , pub xtr_idx : :: std :: os :: raw :: c_int , pub fd : :: std :: os :: raw :: c_int , pub rawstr : :: std :: os :: raw :: c_int , pub nofuncstarts : bool , pub filename : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_file_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_options_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_bin_file_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pluginname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (pluginname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baseaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (baseaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_idx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (xtr_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (rawstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nofuncstarts) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (nofuncstarts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (filename))) ; } impl Default for r_bin_file_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinFileOptions = r_bin_file_options_t ; pub type RBinAddrLineStore = r_bin_addrline_store_t ; pub type RBinAddrLineAdd = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , item : RBinAddrline) -> bool > ; pub type RBinAddrLineGet = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , addr : u64) -> * mut RBinAddrline > ; pub type RBinAddrLineReset = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore) > ; pub type RBinAddrLineDel = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , addr : u64) > ; pub type RBinDbgInfoCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , item : * mut RBinAddrline) -> bool > ; pub type RBinAddrLineFiles = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore) -> * mut RList > ; pub type RBinAddrLineForeach = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , cb : RBinDbgInfoCallback , user : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_addrline_store_t { pub used : bool , pub storage : * mut :: std :: os :: raw :: c_void , pub al_add : RBinAddrLineAdd , pub al_add_cu : RBinAddrLineAdd , pub al_get : RBinAddrLineGet , pub al_del : RBinAddrLineDel , pub al_reset : RBinAddrLineReset , pub al_files : RBinAddrLineFiles , pub al_foreach : RBinAddrLineForeach , } # [test] fn bindgen_test_layout_r_bin_addrline_store_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_addrline_store_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_addrline_store_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_addrline_store_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_addrline_store_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_addrline_store_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . storage) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_add) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_add_cu) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_add_cu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_del) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_files) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_files))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_foreach) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_foreach))) ; } impl Default for r_bin_addrline_store_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " XX curplugin == o->plugin"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_t { pub file : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub size : u64 , pub rawstr : :: std :: os :: raw :: c_int , pub strmode : :: std :: os :: raw :: c_int , pub id : u32 , pub buf : * mut RBuffer , pub offset : u64 , pub bo : * mut RBinObject , pub xtr_obj : * mut :: std :: os :: raw :: c_void , pub user_baddr : u64 , pub loadaddr : u64 , pub minstrlen : :: std :: os :: raw :: c_int , pub maxstrlen : :: std :: os :: raw :: c_int , pub narch : :: std :: os :: raw :: c_int , pub curxtr : * mut r_bin_xtr_plugin_t , pub xtr_data : * mut RList , pub sdb : * mut Sdb , pub sdb_info : * mut Sdb , pub sdb_addrinfo : * mut Sdb , pub addrline : RBinAddrLineStore , pub addrinfo_priv : * mut :: std :: os :: raw :: c_void , pub rbin : * mut r_bin_t , pub string_count : :: std :: os :: raw :: c_int , pub options : * mut RBinFileOptions , } # [test] fn bindgen_test_layout_r_bin_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_t > () , 248usize , concat ! ("Size of: " , stringify ! (r_bin_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (rawstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strmode) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (strmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bo) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (bo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_obj) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (xtr_obj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_baddr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (user_baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrlen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (maxstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . narch) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (narch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curxtr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (curxtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_data) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (xtr_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_info) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_addrinfo) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb_addrinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (addrline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrinfo_priv) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (addrinfo_priv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rbin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (rbin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_count) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (string_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (options))) ; } impl Default for r_bin_file_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " XX curplugin == o->plugin"] pub type RBinFile = r_bin_file_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_options_t { pub fake_aslr : bool , pub demangle_usecmd : bool , pub demangle_trylib : bool , pub verbose : bool , pub use_xtr : bool , pub use_ldr : bool , pub debase64 : bool , pub minstrlen : :: std :: os :: raw :: c_int , pub maxstrlen : :: std :: os :: raw :: c_int , pub maxsymlen : :: std :: os :: raw :: c_int , pub maxstrbuf : u64 , pub limit : :: std :: os :: raw :: c_int , pub rawstr : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_options_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fake_aslr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (fake_aslr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_usecmd) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (demangle_usecmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_trylib) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (demangle_trylib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_xtr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (use_xtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_ldr) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (use_ldr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debase64) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (debase64))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrlen) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxsymlen) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxsymlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrbuf) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxstrbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (rawstr))) ; } pub type RBinOptions = r_bin_options_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_t { pub file : * const :: std :: os :: raw :: c_char , pub cur : * mut RBinFile , pub narch : :: std :: os :: raw :: c_int , pub user : * mut :: std :: os :: raw :: c_void , pub strings_nofp : bool , pub sdb : * mut Sdb , pub ids : * mut RIDStorage , pub plugins : * mut RList , pub binxtrs : * mut RList , pub binldrs : * mut RList , pub binfiles : * mut RList , pub cb_printf : PrintfCallback , pub loadany : :: std :: os :: raw :: c_int , pub iob : RIOBind , pub consb : RConsBind , pub force : * mut :: std :: os :: raw :: c_char , pub want_dbginfo : bool , pub filter : :: std :: os :: raw :: c_int , pub strfilter : :: std :: os :: raw :: c_char , pub strpurge : * mut :: std :: os :: raw :: c_char , pub srcdir : * mut :: std :: os :: raw :: c_char , pub srcdir_base : * mut :: std :: os :: raw :: c_char , pub prefix : * mut :: std :: os :: raw :: c_char , pub strenc : * mut :: std :: os :: raw :: c_char , pub filter_rules : u64 , pub constpool : RStrConstPool , pub options : RBinOptions , } # [test] fn bindgen_test_layout_r_bin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_t > () , 584usize , concat ! ("Size of: " , stringify ! (r_bin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . narch) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (narch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings_nofp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strings_nofp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ids) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (ids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binxtrs) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binxtrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binldrs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binldrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binfiles) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binfiles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadany) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (loadany))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (force))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . want_dbginfo) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (want_dbginfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 476usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strfilter) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strpurge) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strpurge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcdir) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (srcdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcdir_base) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (srcdir_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strenc) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strenc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter_rules) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (filter_rules))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (options))) ; } impl Default for r_bin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_metadata_t { pub arch : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub libname : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub xtr_type : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_xtr_metadata_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_metadata_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_metadata_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_metadata_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_metadata_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_metadata_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (machine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_type) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (xtr_type))) ; } impl Default for r_bin_xtr_metadata_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrMetadata = r_bin_xtr_metadata_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_data_t { pub file : * mut :: std :: os :: raw :: c_char , pub buf : * mut RBuffer , pub size : u64 , pub offset : u64 , pub baddr : u64 , pub laddr : u64 , pub file_count : :: std :: os :: raw :: c_int , pub loaded : bool , pub metadata : * mut RBinXtrMetadata , } # [test] fn bindgen_test_layout_r_bin_xtr_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_data_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . laddr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (laddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_count) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (file_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loaded) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (loaded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . metadata) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (metadata))) ; } impl Default for r_bin_xtr_data_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrData = r_bin_xtr_data_t ; extern "C" { pub fn r_bin_xtrdata_new (buf : * mut RBuffer , offset : u64 , size : u64 , file_count : u32 , metadata : * mut RBinXtrMetadata) -> * mut RBinXtrData ; } extern "C" { pub fn r_bin_xtrdata_free (data : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_plugin_t { pub meta : RPluginMeta , pub check : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer) -> bool > , pub extract_from_bytes : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * const u8 , size : u64 , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extract_from_buffer : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * mut RBuffer , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extractall_from_bytes : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * const u8 , size : u64) -> * mut RList > , pub extractall_from_buffer : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * mut RBuffer) -> * mut RList > , pub extract : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extractall : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> * mut RList > , pub loadbuf : bool , pub weak_guess : bool , pub load : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> bool > , pub size : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> :: std :: os :: raw :: c_int > , pub destroy : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub free_xtr : :: std :: option :: Option < unsafe extern "C" fn (xtr_obj : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_bin_xtr_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_plugin_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract_from_bytes) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract_from_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract_from_buffer) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract_from_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall_from_bytes) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall_from_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall_from_buffer) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall_from_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadbuf) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (loadbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak_guess) as usize - ptr as usize } , 121usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (weak_guess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destroy) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_xtr) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (free_xtr))) ; } impl Default for r_bin_xtr_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrPlugin = r_bin_xtr_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_ldr_plugin_t { pub meta : RPluginMeta , pub load : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> bool > , } # [test] fn bindgen_test_layout_r_bin_ldr_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_ldr_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_ldr_plugin_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_ldr_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_ldr_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_ldr_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_ldr_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_ldr_plugin_t) , "::" , stringify ! (load))) ; } impl Default for r_bin_ldr_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinLdrPlugin = r_bin_ldr_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_arch_options_t { pub arch : * const :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_arch_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_arch_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_arch_options_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bin_arch_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_arch_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_arch_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_arch_options_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_arch_options_t) , "::" , stringify ! (bits))) ; } impl Default for r_bin_arch_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinArchOptions = r_bin_arch_options_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_trycatch_t { pub source : u64 , pub from : u64 , pub to : u64 , pub handler : u64 , pub filter : u64 , } # [test] fn bindgen_test_layout_r_bin_trycatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_trycatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_trycatch_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_trycatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_trycatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_trycatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (filter))) ; } pub type RBinTrycatch = r_bin_trycatch_t ; extern "C" { pub fn r_bin_trycatch_new (source : u64 , from : u64 , to : u64 , handler : u64 , filter : u64) -> * mut RBinTrycatch ; } extern "C" { pub fn r_bin_trycatch_free (tc : * mut RBinTrycatch) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_plugin_t { pub meta : RPluginMeta , pub init : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub get_sdb : :: std :: option :: Option < unsafe extern "C" fn (obj : * mut RBinFile) -> * mut Sdb > , pub load : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer , laddr : u64) -> bool > , pub size : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinFile) -> u64 > , pub destroy : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) > , pub check : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer) -> bool > , pub baddr : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> u64 > , pub binsym : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , num : :: std :: os :: raw :: c_int) -> * mut RBinAddr > , pub entries : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub sections : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub symbols : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub imports : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub sections_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub symbols_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub imports_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub lines : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub strings : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub info : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RBinInfo > , pub fields : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub libs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub relocs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub trycatch : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub classes : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub mem : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub patch_relocs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub maps : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub hashes : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub header : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) > , pub signature : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , json : bool) -> * mut :: std :: os :: raw :: c_char > , pub demangle_type : :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub write : * mut r_bin_write_t , pub get_offset : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> u64 > , pub get_name : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , simplified : bool) -> * const :: std :: os :: raw :: c_char > , pub get_vaddr : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , baddr : u64 , paddr : u64 , vaddr : u64) -> u64 > , pub create : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , code : * const u8 , codelen : :: std :: os :: raw :: c_int , data : * const u8 , datalen : :: std :: os :: raw :: c_int , opt : * mut RBinArchOptions) -> * mut RBuffer > , pub demangle : :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > , pub regstate : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut :: std :: os :: raw :: c_char > , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , command : * const :: std :: os :: raw :: c_char) -> bool > , pub minstrlen : :: std :: os :: raw :: c_int , pub strfilter : :: std :: os :: raw :: c_char , pub weak_guess : bool , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_bin_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_plugin_t > () , 392usize , concat ! ("Size of: " , stringify ! (r_bin_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_sdb) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destroy) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binsym) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (binsym))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections_vec) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (sections_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols_vec) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (symbols_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports_vec) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (imports_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libs) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . relocs) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trycatch) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (trycatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch_relocs) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (patch_relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hashes) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (hashes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . header) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (header))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_type) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (demangle_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_offset) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_name) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_vaddr) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . create) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (demangle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regstate) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (regstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strfilter) as usize - ptr as usize } , 380usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (strfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak_guess) as usize - ptr as usize } , 381usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (weak_guess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (user))) ; } impl Default for r_bin_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinPlugin = r_bin_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_class_t { pub name : * mut RBinName , pub super_ : * mut RList , pub visibility_str : * mut :: std :: os :: raw :: c_char , pub index : :: std :: os :: raw :: c_int , pub addr : u64 , pub instance_size : usize , pub ns : * mut :: std :: os :: raw :: c_char , pub methods : * mut RList , pub fields : * mut RList , pub attr : RBinAttribute , pub lang : u64 , } # [test] fn bindgen_test_layout_r_bin_class_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_class_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_class_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_class_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_class_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_class_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . super_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (super_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility_str) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (visibility_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . instance_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (instance_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (methods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (lang))) ; } impl Default for r_bin_class_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinClass = r_bin_class_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_reloc_t { pub type_ : u8 , pub additive : u8 , pub ntype : u64 , pub symbol : * mut RBinSymbol , pub import : * mut RBinImport , pub laddr : u64 , pub addend : i64 , pub vaddr : u64 , pub paddr : u64 , pub visibility : u32 , pub is_ifunc : bool , } # [test] fn bindgen_test_layout_r_bin_reloc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_reloc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_reloc_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_reloc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_reloc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_reloc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . additive) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (additive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ntype) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (ntype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . import) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (import))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . laddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (laddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addend) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (addend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (visibility))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_ifunc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (is_ifunc))) ; } impl Default for r_bin_reloc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinReloc = r_bin_reloc_t ; pub const RBinFieldKind_R_BIN_FIELD_KIND_VARIABLE : RBinFieldKind = 0 ; pub const RBinFieldKind_R_BIN_FIELD_KIND_FIELD : RBinFieldKind = 1 ; pub const RBinFieldKind_R_BIN_FIELD_KIND_PROPERTY : RBinFieldKind = 2 ; pub type RBinFieldKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_field_t { pub vaddr : u64 , pub paddr : u64 , pub value : u64 , pub size : :: std :: os :: raw :: c_int , pub offset : :: std :: os :: raw :: c_int , pub name : * mut RBinName , pub type_ : * mut RBinName , pub kind : RBinFieldKind , pub comment : * mut :: std :: os :: raw :: c_char , pub format : * mut :: std :: os :: raw :: c_char , pub format_named : bool , pub attr : RBinAttribute , } # [test] fn bindgen_test_layout_r_bin_field_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_field_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_field_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_field_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_field_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_field_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format_named) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (format_named))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (attr))) ; } impl Default for r_bin_field_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinField = r_bin_field_t ; extern "C" { pub fn r_bin_field_kindstr (f : * mut RBinField) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_field_new (paddr : u64 , vaddr : u64 , value : u64 , size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char , comment : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , format_named : bool) -> * mut RBinField ; } extern "C" { pub fn r_bin_field_free (arg1 : * mut :: std :: os :: raw :: c_void) ; } pub type RBinWriteAddLib = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , lib : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RBinWriteScnResize = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , newsize : u64) -> u64 > ; pub type RBinWriteScnPerms = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , perms : :: std :: os :: raw :: c_int) -> bool > ; pub type RBinWriteEntry = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , addr : u64) -> bool > ; pub type RBinWriteRpathDel = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_write_t { pub scn_resize : RBinWriteScnResize , pub scn_perms : RBinWriteScnPerms , pub rpath_del : RBinWriteRpathDel , pub entry : RBinWriteEntry , pub addlib : RBinWriteAddLib , } # [test] fn bindgen_test_layout_r_bin_write_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_write_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_write_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_write_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_write_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_write_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scn_resize) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (scn_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scn_perms) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (scn_perms))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rpath_del) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (rpath_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entry) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addlib) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (addlib))) ; } pub type RBinGetOffset = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RBinGetName = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , sd : bool) -> * const :: std :: os :: raw :: c_char > ; pub type RBinGetSections = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> * mut RList > ; pub type RBinGetSectionAt = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , addr : u64) -> * mut RBinSection > ; pub type RBinDemangle = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , def : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64 , libs : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RBinBaddr = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , addr : u64) -> u64 > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_bind_t { pub bin : * mut RBin , pub get_offset : RBinGetOffset , pub get_name : RBinGetName , pub get_sections : RBinGetSections , pub get_vsect_at : RBinGetSectionAt , pub demangle : RBinDemangle , pub addrline_add : RBinAddrLineAdd , pub addrline_get : RBinAddrLineGet , pub baddr : RBinBaddr , pub visibility : u32 , } # [test] fn bindgen_test_layout_r_bin_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_bind_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_bin_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_sections) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_vsect_at) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_vsect_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (demangle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline_add) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (addrline_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline_get) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (addrline_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (visibility))) ; } impl Default for r_bin_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinBind = r_bin_bind_t ; extern "C" { pub fn r_bin_section_clone (s : * mut RBinSection) -> * mut RBinSection ; } extern "C" { pub fn r_bin_info_free (rb : * mut RBinInfo) ; } extern "C" { pub fn r_bin_import_free (imp : * mut RBinImport) ; } extern "C" { pub fn r_bin_symbol_free (sym : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_import_tags (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_symbol_new (name : * const :: std :: os :: raw :: c_char , paddr : u64 , vaddr : u64) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_symbol_clone (bs : * mut RBinSymbol) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_symbol_copy (dst : * mut RBinSymbol , src : * mut RBinSymbol) ; } extern "C" { pub fn r_bin_string_free (_str : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_import_clone (o : * mut RBinImport) -> * mut RBinImport ; } extern "C" { pub fn r_bin_file_options_init (opt : * mut RBinFileOptions , fd : :: std :: os :: raw :: c_int , baseaddr : u64 , loadaddr : u64 , rawstr : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_arch_options_init (opt : * mut RBinArchOptions , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_new () -> * mut RBin ; } extern "C" { pub fn r_bin_free (bin : * mut RBin) ; } extern "C" { pub fn r_bin_open (bin : * mut RBin , file : * const :: std :: os :: raw :: c_char , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_open_io (bin : * mut RBin , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_open_buf (bin : * mut RBin , buf : * mut RBuffer , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_reload (bin : * mut RBin , bf_id : u32 , baseaddr : u64) -> bool ; } extern "C" { pub fn r_bin_command (bin : * mut RBin , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_class_new (name : * const :: std :: os :: raw :: c_char , super_ : * const :: std :: os :: raw :: c_char , attr : u64) -> * mut RBinClass ; } extern "C" { pub fn r_bin_class_free (arg1 : * mut RBinClass) ; } extern "C" { pub fn r_bin_file_open (bin : * mut RBin , file : * const :: std :: os :: raw :: c_char , opt : * mut RBinFileOptions) -> * mut RBinFile ; } extern "C" { pub fn r_bin_bind (b : * mut RBin , bnd : * mut RBinBind) ; } extern "C" { pub fn r_bin_plugin_add (bin : * mut RBin , plugin : * mut RBinPlugin) -> bool ; } extern "C" { pub fn r_bin_plugin_remove (bin : * mut RBin , plugin : * mut RBinPlugin) -> bool ; } extern "C" { pub fn r_bin_xtr_add (bin : * mut RBin , foo : * mut RBinXtrPlugin) -> bool ; } extern "C" { pub fn r_bin_ldr_add (bin : * mut RBin , foo : * mut RBinLdrPlugin) -> bool ; } extern "C" { pub fn r_bin_list (bin : * mut RBin , pj : * mut PJ , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_list_plugin (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , pj : * mut PJ , json : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_get_binplugin_by_buffer (bin : * mut RBin , bf : * mut RBinFile , buf : * mut RBuffer) -> * mut RBinPlugin ; } extern "C" { pub fn r_bin_force_plugin (bin : * mut RBin , pname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_get_baddr (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_file_get_baddr (bf : * mut RBinFile) -> u64 ; } extern "C" { pub fn r_bin_set_user_ptr (bin : * mut RBin , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_get_info (bin : * mut RBin) -> * mut RBinInfo ; } extern "C" { pub fn r_bin_set_baddr (bin : * mut RBin , baddr : u64) ; } extern "C" { pub fn r_bin_get_laddr (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_get_size (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_get_sym (bin : * mut RBin , sym : :: std :: os :: raw :: c_int) -> * mut RBinAddr ; } extern "C" { pub fn r_bin_raw_strings (a : * mut RBinFile , min : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_dump_strings (a : * mut RBinFile , min : :: std :: os :: raw :: c_int , raw : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_get_entries (bin : * mut RBin) -> * const RList ; } extern "C" { pub fn r_bin_get_imports (bin : * mut RBin) -> * const RList ; } extern "C" { pub fn r_bin_get_libs (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_patch_relocs (bin : * mut RBinFile) -> * mut RRBTree ; } extern "C" { pub fn r_bin_get_relocs (bin : * mut RBin) -> * mut RRBTree ; } extern "C" { pub fn r_bin_get_sections (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_classes (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_strings (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_file_get_trycatch (bf : * mut RBinFile) -> * mut RList ; } extern "C" { pub fn r_bin_get_symbols (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_symbols_vec (bin : * mut RBin) -> * mut RVecRBinSymbol ; } extern "C" { pub fn r_bin_reset_strings (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_is_big_endian (bin : * mut RBin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_is_static (bin : * mut RBin) -> bool ; } extern "C" { pub fn r_bin_get_vaddr (bin : * mut RBin , paddr : u64 , vaddr : u64) -> u64 ; } extern "C" { pub fn r_bin_file_get_vaddr (bf : * mut RBinFile , paddr : u64 , vaddr : u64) -> u64 ; } extern "C" { pub fn r_bin_load_languages (binfile : * mut RBinFile) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_cur (bin : * mut RBin) -> * mut RBinFile ; } extern "C" { pub fn r_bin_cur_object (bin : * mut RBin) -> * mut RBinObject ; } extern "C" { pub fn r_bin_select (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_select_bfid (bin : * mut RBin , bf_id : u32) -> bool ; } extern "C" { pub fn r_bin_use_arch (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_list_archs (bin : * mut RBin , pj : * mut PJ , t : * mut RTable , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_create (bin : * mut RBin , plugin_name : * const :: std :: os :: raw :: c_char , code : * const u8 , codelen : :: std :: os :: raw :: c_int , data : * const u8 , datalen : :: std :: os :: raw :: c_int , opt : * mut RBinArchOptions) -> * mut RBuffer ; } extern "C" { pub fn r_bin_package (bin : * mut RBin , type_ : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char , files : * mut RList) -> * mut RBuffer ; } extern "C" { pub fn r_bin_string_type (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_entry_type_string (etype : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_file_object_new_from_xtr_data (bin : * mut RBin , bf : * mut RBinFile , baseaddr : u64 , loadaddr : u64 , data : * mut RBinXtrData) -> bool ; } extern "C" { pub fn r_bin_file_close (bin : * mut RBin , bd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_file_free (bf_ : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_file_at (bin : * mut RBin , addr : u64) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_object_id (bin : * mut RBin , binobj_id : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_get_symbols (bf : * mut RBinFile) -> * mut RList ; } extern "C" { pub fn r_bin_file_get_symbols_vec (bf : * mut RBinFile) -> * mut RVecRBinSymbol ; } extern "C" { pub fn r_bin_file_add_class (binfile : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , super_ : * const :: std :: os :: raw :: c_char , attr : u64) -> * mut RBinClass ; } extern "C" { pub fn r_bin_file_add_method (bf : * mut RBinFile , rawname : * const :: std :: os :: raw :: c_char , classname : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , nargs : :: std :: os :: raw :: c_int) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_file_add_field (binfile : * mut RBinFile , classname : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> * mut RBinField ; } extern "C" { pub fn r_bin_file_find_by_arch_bits (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_id (bin : * mut RBin , bin_id : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_fd (bin : * mut RBin , bin_fd : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_set_cur_binfile (bin : * mut RBin , bf : * mut RBinFile) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_file_deref (bin : * mut RBin , a : * mut RBinFile) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_fd (bin : * mut RBin , bin_fd : u32) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_id (bin : * mut RBin , bin_id : u32) -> bool ; } extern "C" { pub fn r_bin_file_delete_all (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_file_delete (bin : * mut RBin , bin_id : u32) -> bool ; } extern "C" { pub fn r_bin_file_merge (bo : * mut RBinFile , b : * mut RBinFile) ; } extern "C" { pub fn r_bin_file_compute_hashes (bin : * mut RBin , limit : u64) -> * mut RList ; } extern "C" { pub fn r_bin_file_set_hashes (bin : * mut RBin , new_hashes : * mut RList) -> * mut RList ; } extern "C" { pub fn r_bin_file_cur_plugin (binfile : * mut RBinFile) -> * mut RBinPlugin ; } extern "C" { pub fn r_bin_file_hash_free (fhash : * mut RBinFileHash) ; } extern "C" { pub fn r_bin_object_set_items (binfile : * mut RBinFile , o : * mut RBinObject) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_object_delete (bin : * mut RBin , binfile_id : u32) -> bool ; } extern "C" { pub fn r_bin_mem_free (data : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_demangle (binfile : * mut RBinFile , lang : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64 , libs : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_java (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_freepascal (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_cxx (binfile : * mut RBinFile , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_msvc (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_swift (s : * const :: std :: os :: raw :: c_char , syscmd : bool , trylib : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_objc (binfile : * mut RBinFile , sym : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_rust (binfile : * mut RBinFile , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_type (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_demangle_list (bin : * mut RBin) ; } extern "C" { pub fn r_bin_demangle_plugin (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_meth_flag_string (flag : u64 , compact : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_section_at (o : * mut RBinObject , off : u64 , va : :: std :: os :: raw :: c_int) -> * mut RBinSection ; } extern "C" { pub fn r_bin_addrline_reset (bin : * mut RBin) ; } extern "C" { pub fn r_bin_addrline_reset_at (bin : * mut RBin , addr : u64) ; } extern "C" { pub fn r_bin_addrline_foreach (bin : * mut RBin , item : RBinDbgInfoCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_bin_addrline_files (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_addrline_at (bin : * mut RBin , addr : u64) -> * mut RBinAddrline ; } extern "C" { pub fn r_bin_addrline_free (di : * mut RBinAddrline) ; } extern "C" { pub fn r_bin_addrline_get (bin : * mut RBin , addr : u64) -> * mut RBinAddrline ; } extern "C" { pub fn r_bin_addrline_tostring (bin : * mut RBin , addr : u64 , origin : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_wr_addlib (bin : * mut RBin , lib : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_wr_scn_resize (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , size : u64) -> u64 ; } extern "C" { pub fn r_bin_wr_scn_perms (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , perms : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_wr_rpath_del (bin : * mut RBin) -> bool ; } extern "C" { pub fn r_bin_wr_entry (bin : * mut RBin , addr : u64) -> bool ; } extern "C" { pub fn r_bin_wr_output (bin : * mut RBin , filename : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_lang_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_mem (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_name_new (name : * const :: std :: os :: raw :: c_char) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_new_from (name : * mut :: std :: os :: raw :: c_char) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_clone (bn : * mut RBinName) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_update (bn : * mut RBinName , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_tostring (bn : * mut RBinName) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_name_tostring2 (bn : * mut RBinName , type_ : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_name_demangled (bn : * mut RBinName , dname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_filtered (bn : * mut RBinName , fname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_free (bn : * mut RBinName) ; } extern "C" { pub fn r_bin_attr_tostring (attr : u64 , singlechar : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_attr_fromstring (s : * const :: std :: os :: raw :: c_char , compact : bool) -> u64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct HtSU_t { _unused : [u8 ; 0] , } pub type HtSU = HtSU_t ; extern "C" { pub fn r_bin_load_filter (bin : * mut RBin , rules : u64) ; } extern "C" { pub fn r_bin_filter_symbols (bf : * mut RBinFile , list : * mut RList) ; } extern "C" { pub fn r_bin_filter_sections (bf : * mut RBinFile , list : * mut RList) ; } extern "C" { pub fn r_bin_filter_name (bf : * mut RBinFile , db : * mut HtSU , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_strpurge (bin : * mut RBin , str_ : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_bin_string_filter (bin : * mut RBin , str_ : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_bin_filter_sym (bf : * mut RBinFile , ht : * mut [u64 ; 11usize] , vaddr : u64 , sym : * mut RBinSymbol) -> bool ; } extern "C" { pub fn r_bin_section_new (name : * const :: std :: os :: raw :: c_char) -> * mut RBinSection ; } extern "C" { pub fn r_bin_section_free (bs : * mut RBinSection) ; } pub const r_reg_alias_t_R_REG_ALIAS_PC : r_reg_alias_t = 0 ; pub const r_reg_alias_t_R_REG_ALIAS_SP : r_reg_alias_t = 1 ; pub const r_reg_alias_t_R_REG_ALIAS_GP : r_reg_alias_t = 2 ; pub const r_reg_alias_t_R_REG_ALIAS_RA : r_reg_alias_t = 3 ; pub const r_reg_alias_t_R_REG_ALIAS_SR : r_reg_alias_t = 4 ; pub const r_reg_alias_t_R_REG_ALIAS_BP : r_reg_alias_t = 5 ; pub const r_reg_alias_t_R_REG_ALIAS_LR : r_reg_alias_t = 6 ; pub const r_reg_alias_t_R_REG_ALIAS_RS : r_reg_alias_t = 7 ; pub const r_reg_alias_t_R_REG_ALIAS_A0 : r_reg_alias_t = 8 ; pub const r_reg_alias_t_R_REG_ALIAS_A1 : r_reg_alias_t = 9 ; pub const r_reg_alias_t_R_REG_ALIAS_A2 : r_reg_alias_t = 10 ; pub const r_reg_alias_t_R_REG_ALIAS_A3 : r_reg_alias_t = 11 ; pub const r_reg_alias_t_R_REG_ALIAS_A4 : r_reg_alias_t = 12 ; pub const r_reg_alias_t_R_REG_ALIAS_A5 : r_reg_alias_t = 13 ; pub const r_reg_alias_t_R_REG_ALIAS_A6 : r_reg_alias_t = 14 ; pub const r_reg_alias_t_R_REG_ALIAS_A7 : r_reg_alias_t = 15 ; pub const r_reg_alias_t_R_REG_ALIAS_A8 : r_reg_alias_t = 16 ; pub const r_reg_alias_t_R_REG_ALIAS_A9 : r_reg_alias_t = 17 ; pub const r_reg_alias_t_R_REG_ALIAS_R0 : r_reg_alias_t = 18 ; pub const r_reg_alias_t_R_REG_ALIAS_R1 : r_reg_alias_t = 19 ; pub const r_reg_alias_t_R_REG_ALIAS_R2 : r_reg_alias_t = 20 ; pub const r_reg_alias_t_R_REG_ALIAS_R3 : r_reg_alias_t = 21 ; pub const r_reg_alias_t_R_REG_ALIAS_F0 : r_reg_alias_t = 22 ; pub const r_reg_alias_t_R_REG_ALIAS_F1 : r_reg_alias_t = 23 ; pub const r_reg_alias_t_R_REG_ALIAS_F2 : r_reg_alias_t = 24 ; pub const r_reg_alias_t_R_REG_ALIAS_F3 : r_reg_alias_t = 25 ; pub const r_reg_alias_t_R_REG_ALIAS_ZF : r_reg_alias_t = 26 ; pub const r_reg_alias_t_R_REG_ALIAS_SF : r_reg_alias_t = 27 ; pub const r_reg_alias_t_R_REG_ALIAS_CF : r_reg_alias_t = 28 ; pub const r_reg_alias_t_R_REG_ALIAS_OF : r_reg_alias_t = 29 ; pub const r_reg_alias_t_R_REG_ALIAS_TR : r_reg_alias_t = 30 ; pub const r_reg_alias_t_R_REG_ALIAS_SN : r_reg_alias_t = 31 ; pub const r_reg_alias_t_R_REG_ALIAS_LAST : r_reg_alias_t = 32 ; pub type r_reg_alias_t = :: std :: os :: raw :: c_uint ; pub use self :: r_reg_alias_t as RRegAlias ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub offset : :: std :: os :: raw :: c_int , pub packed_size : :: std :: os :: raw :: c_int , pub is_float : bool , pub flags : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub index : :: std :: os :: raw :: c_int , pub arena : :: std :: os :: raw :: c_int , pub ro : bool , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_reg_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_reg_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . packed_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (packed_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_float) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (is_float))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ro) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (ro))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (free))) ; } impl Default for r_reg_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegItem = r_reg_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_arena_t { pub bytes : * mut u8 , pub size : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_reg_arena_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_arena_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_arena_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_reg_arena_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_arena_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_arena_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_arena_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_arena_t) , "::" , stringify ! (size))) ; } impl Default for r_reg_arena_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegArena = r_reg_arena_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_set_t { pub arena : * mut RRegArena , pub pool : * mut RList , pub regs : * mut RList , pub ht_regs : * mut [u64 ; 11usize] , pub cur : * mut RListIter , pub maskregstype : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_reg_set_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_set_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_set_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_reg_set_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_set_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_set_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_regs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (ht_regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maskregstype) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (maskregstype))) ; } impl Default for r_reg_set_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegSet = r_reg_set_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_t { pub profile : * mut :: std :: os :: raw :: c_char , pub reg_profile_cmt : * mut :: std :: os :: raw :: c_char , pub reg_profile_str : * mut :: std :: os :: raw :: c_char , pub alias : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub regset : [RRegSet ; 10usize] , pub allregs : * mut RList , pub roregs : * mut :: std :: os :: raw :: c_char , pub hasbits : RSysBits , pub iters : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub bits_default : :: std :: os :: raw :: c_int , pub endian : u32 , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_reg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_t > () , 816usize , concat ! ("Size of: " , stringify ! (r_reg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . profile) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile_cmt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (reg_profile_cmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile_str) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (reg_profile_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regset) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (regset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allregs) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (allregs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . roregs) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (roregs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hasbits) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (hasbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iters) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (iters))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits_default) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (bits_default))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 796usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (free))) ; } impl Default for r_reg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RReg = r_reg_t ; extern "C" { pub fn r_reg_hasbits_check (reg : * mut RReg , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_hasbits_use (reg : * mut RReg , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_hasbits_clear (reg : * mut RReg) ; } extern "C" { pub fn r_reg_clone (reg : * mut RReg) -> * mut RReg ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_reg_flags_t { pub s : bool , pub z : bool , pub a : bool , pub c : bool , pub o : bool , pub p : bool , } # [test] fn bindgen_test_layout_r_reg_flags_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_flags_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_flags_t > () , 6usize , concat ! ("Size of: " , stringify ! (r_reg_flags_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_flags_t > () , 1usize , concat ! ("Alignment of " , stringify ! (r_reg_flags_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . z) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (z))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . o) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (o))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (p))) ; } pub type RRegFlags = r_reg_flags_t ; extern "C" { pub fn r_reg_free_internal (reg : * mut RReg , init : bool) ; } extern "C" { pub fn r_reg_reindex (reg : * mut RReg) ; } extern "C" { pub fn r_reg_item_free (item : * mut RRegItem) ; } extern "C" { pub fn r_reg_free (reg : * mut RReg) ; } extern "C" { pub fn r_reg_new () -> * mut RReg ; } extern "C" { pub fn r_reg_init (reg : * mut RReg) -> * mut RReg ; } extern "C" { pub fn r_reg_alias_setname (reg : * mut RReg , alias : RRegAlias , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_alias_tostring (alias : RRegAlias) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_alias_getname (reg : * mut RReg , alias : RRegAlias) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_alias_fromstring (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_set_profile_string (reg : * mut RReg , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_profile_to_cc (reg : * mut RReg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_set_profile (reg : * mut RReg , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_parse_gdb_profile (profile : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_ro_reset (reg : * mut RReg , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_regset_get (r : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> * mut RRegSet ; } extern "C" { pub fn r_reg_getv (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_reg_setv (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_reg_32_to_64 (reg : * mut RReg , rreg32 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_64_to_32 (reg : * mut RReg , rreg64 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_get (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_get_list (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_reg_get_at (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , regsize : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_next_diff (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , buflen : :: std :: os :: raw :: c_int , prev_ri : * mut RRegItem , regsize : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_index_get (reg : * mut RReg , idx : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_type_by_name (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_type_tostring (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_cond (r : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_cond_get (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> * mut RRegItem ; } extern "C" { pub fn r_reg_cond_apply (r : * mut RReg , f : * mut RRegFlags) ; } extern "C" { pub fn r_reg_cond_set (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , val : bool) -> bool ; } extern "C" { pub fn r_reg_cond_get_value (r : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_cond_bits_set (r : * mut RReg , type_ : :: std :: os :: raw :: c_int , f : * mut RRegFlags , v : bool) -> bool ; } extern "C" { pub fn r_reg_cond_bits (r : * mut RReg , type_ : :: std :: os :: raw :: c_int , f : * mut RRegFlags) -> bool ; } extern "C" { pub fn r_reg_cond_retrieve (r : * mut RReg , arg1 : * mut RRegFlags) -> * mut RRegFlags ; } extern "C" { pub fn r_reg_get_value (reg : * mut RReg , item : * mut RRegItem) -> u64 ; } extern "C" { pub fn r_reg_get_value_big (reg : * mut RReg , item : * mut RRegItem , val : * mut utX) -> u64 ; } extern "C" { pub fn r_reg_get_value_by_role (reg : * mut RReg , alias : RRegAlias) -> u64 ; } extern "C" { pub fn r_reg_set_value (reg : * mut RReg , item : * mut RRegItem , value : u64) -> bool ; } extern "C" { pub fn r_reg_set_value_by_role (reg : * mut RReg , alias : RRegAlias , value : u64) -> bool ; } extern "C" { pub fn r_reg_get_float (reg : * mut RReg , item : * mut RRegItem) -> f32 ; } extern "C" { pub fn r_reg_set_float (reg : * mut RReg , item : * mut RRegItem , value : f32) -> bool ; } extern "C" { pub fn r_reg_get_double (reg : * mut RReg , item : * mut RRegItem) -> f64 ; } extern "C" { pub fn r_reg_set_double (reg : * mut RReg , item : * mut RRegItem , value : f64) -> bool ; } extern "C" { pub fn r_reg_get_longdouble (reg : * mut RReg , item : * mut RRegItem) -> u128 ; } extern "C" { pub fn r_reg_set_longdouble (reg : * mut RReg , item : * mut RRegItem , value : u128) -> bool ; } extern "C" { pub fn r_reg_get_bvalue (reg : * mut RReg , item : * mut RRegItem) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_set_bvalue (reg : * mut RReg , item : * mut RRegItem , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_reg_set_pack (reg : * mut RReg , item : * mut RRegItem , packidx : :: std :: os :: raw :: c_int , packbits : :: std :: os :: raw :: c_int , val : u64) -> bool ; } extern "C" { pub fn r_reg_get_pack (reg : * mut RReg , item : * mut RRegItem , packidx : :: std :: os :: raw :: c_int , packbits : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_reg_default_bits (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_default_endian (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_get_bytes (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , size : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_reg_set_bytes (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_read_regs (reg : * mut RReg , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_arena_set_bytes (reg : * mut RReg , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_new (size : :: std :: os :: raw :: c_int) -> * mut RRegArena ; } extern "C" { pub fn r_reg_arena_clone (a : * mut RRegArena) -> * mut RRegArena ; } extern "C" { pub fn r_reg_arena_free (ra : * mut RRegArena) ; } extern "C" { pub fn r_reg_fit_arena (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_swap (reg : * mut RReg , copy : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_reg_arena_push (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_pop (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_zero (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_peek (reg : * mut RReg , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_reg_arena_poke (reg : * mut RReg , buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_reg_arena_dup (reg : * mut RReg , source : * const u8) -> * mut u8 ; } extern "C" { pub fn r_reg_cond_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_cond_from_string (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_shrink (reg : * mut RReg) ; } pub const RArchValueType_R_ANAL_VAL_REG : RArchValueType = 0 ; pub const RArchValueType_R_ANAL_VAL_MEM : RArchValueType = 1 ; pub const RArchValueType_R_ANAL_VAL_IMM : RArchValueType = 2 ; pub type RArchValueType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_value_t { pub type_ : RArchValueType , pub access : :: std :: os :: raw :: c_int , pub absolute : bool , pub memref : :: std :: os :: raw :: c_int , pub base : u64 , pub delta : i64 , pub imm : i64 , pub mul : :: std :: os :: raw :: c_int , pub seg : * const :: std :: os :: raw :: c_char , pub reg : * const :: std :: os :: raw :: c_char , pub regdelta : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_arch_value_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_value_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_value_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_arch_value_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_value_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_value_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . access) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . absolute) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (absolute))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memref) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (memref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (imm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mul) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (mul))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seg) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (seg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regdelta) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (regdelta))) ; } impl Default for r_arch_value_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchValue = r_arch_value_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_hint_t { pub addr : u64 , pub ptr : u64 , pub val : u64 , pub jump : u64 , pub fail : u64 , pub ret : u64 , pub arch : * mut :: std :: os :: raw :: c_char , pub opcode : * mut :: std :: os :: raw :: c_char , pub syntax : * mut :: std :: os :: raw :: c_char , pub esil : * mut :: std :: os :: raw :: c_char , pub offset : * mut :: std :: os :: raw :: c_char , pub type_ : u32 , pub size : u64 , pub bits : :: std :: os :: raw :: c_int , pub new_bits : :: std :: os :: raw :: c_int , pub immbase : :: std :: os :: raw :: c_int , pub high : bool , pub nword : :: std :: os :: raw :: c_int , pub stackframe : u64 , } # [test] fn bindgen_test_layout_r_anal_hint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_hint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_hint_t > () , 136usize , concat ! ("Size of: " , stringify ! (r_anal_hint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_hint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_hint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opcode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (opcode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (syntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . new_bits) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (new_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . immbase) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (immbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . high) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nword) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (nword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackframe) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (stackframe))) ; } impl Default for r_anal_hint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalHint = r_anal_hint_t ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_COND : RAnalOpPrefix = 1 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_REP : RAnalOpPrefix = 2 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_REPNE : RAnalOpPrefix = 4 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_LOCK : RAnalOpPrefix = 8 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_LIKELY : RAnalOpPrefix = 16 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_UNLIKELY : RAnalOpPrefix = 32 ; pub type RAnalOpPrefix = :: std :: os :: raw :: c_uint ; pub const RAnalStackOp_R_ANAL_STACK_NULL : RAnalStackOp = 0 ; pub const RAnalStackOp_R_ANAL_STACK_NOP : RAnalStackOp = 1 ; pub const RAnalStackOp_R_ANAL_STACK_INC : RAnalStackOp = 2 ; pub const RAnalStackOp_R_ANAL_STACK_GET : RAnalStackOp = 3 ; pub const RAnalStackOp_R_ANAL_STACK_SET : RAnalStackOp = 4 ; pub const RAnalStackOp_R_ANAL_STACK_RESET : RAnalStackOp = 5 ; pub const RAnalStackOp_R_ANAL_STACK_ALIGN : RAnalStackOp = 6 ; pub type RAnalStackOp = :: std :: os :: raw :: c_uint ; pub const RAnalOpDirection_R_ANAL_OP_DIR_READ : RAnalOpDirection = 1 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_WRITE : RAnalOpDirection = 2 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_EXEC : RAnalOpDirection = 4 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_REF : RAnalOpDirection = 8 ; pub type RAnalOpDirection = :: std :: os :: raw :: c_uint ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_UNKNOWN : RAnalOpFamily = - 1 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_CPU : RAnalOpFamily = 0 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_FPU : RAnalOpFamily = 1 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_VEC : RAnalOpFamily = 2 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_PRIV : RAnalOpFamily = 3 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_CRYPTO : RAnalOpFamily = 4 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_THREAD : RAnalOpFamily = 5 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_VIRT : RAnalOpFamily = 6 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_SECURITY : RAnalOpFamily = 7 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_IO : RAnalOpFamily = 8 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_SIMD : RAnalOpFamily = 9 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_LAST : RAnalOpFamily = 10 ; pub type RAnalOpFamily = :: std :: os :: raw :: c_int ; pub const RAnalCondType_R_ANAL_CONDTYPE_AL : RAnalCondType = 0 ; pub const RAnalCondType_R_ANAL_CONDTYPE_EQ : RAnalCondType = 1 ; pub const RAnalCondType_R_ANAL_CONDTYPE_NE : RAnalCondType = 2 ; pub const RAnalCondType_R_ANAL_CONDTYPE_GE : RAnalCondType = 3 ; pub const RAnalCondType_R_ANAL_CONDTYPE_GT : RAnalCondType = 4 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LE : RAnalCondType = 5 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LT : RAnalCondType = 6 ; pub const RAnalCondType_R_ANAL_CONDTYPE_NV : RAnalCondType = 7 ; pub const RAnalCondType_R_ANAL_CONDTYPE_HS : RAnalCondType = 8 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LO : RAnalCondType = 9 ; pub const RAnalCondType_R_ANAL_CONDTYPE_MI : RAnalCondType = 10 ; pub const RAnalCondType_R_ANAL_CONDTYPE_PL : RAnalCondType = 11 ; pub const RAnalCondType_R_ANAL_CONDTYPE_VS : RAnalCondType = 12 ; pub const RAnalCondType_R_ANAL_CONDTYPE_VC : RAnalCondType = 13 ; pub const RAnalCondType_R_ANAL_CONDTYPE_HI : RAnalCondType = 14 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LS : RAnalCondType = 15 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LAST : RAnalCondType = 16 ; pub const RAnalCondType_R_ANAL_CONDTYPE_ERR : RAnalCondType = - 1 ; pub type RAnalCondType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_case_op_t { pub addr : u64 , pub jump : u64 , pub value : u64 , } # [test] fn bindgen_test_layout_r_anal_case_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_case_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_case_op_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_case_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_case_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_case_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (value))) ; } pub type RAnalCaseOp = r_anal_case_op_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_switch_op_t { pub addr : u64 , pub baddr : u64 , pub daddr : u64 , pub dsize : :: std :: os :: raw :: c_int , pub amount : :: std :: os :: raw :: c_int , pub min_val : u64 , pub def_val : u64 , pub max_val : u64 , pub cases : * mut RList , } # [test] fn bindgen_test_layout_r_anal_switch_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_switch_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_switch_op_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_anal_switch_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_switch_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_switch_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . daddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dsize) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (dsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . amount) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (amount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . min_val) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (min_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . def_val) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (def_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_val) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (max_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cases) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (cases))) ; } impl Default for r_anal_switch_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalSwitchOp = r_anal_switch_op_t ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_NULL : r_anal_data_type_t = 0 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_ARRAY : r_anal_data_type_t = 1 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_OBJECT : r_anal_data_type_t = 2 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_STRING : r_anal_data_type_t = 3 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_CLASS : r_anal_data_type_t = 4 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_BOOLEAN : r_anal_data_type_t = 5 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT16 : r_anal_data_type_t = 6 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT32 : r_anal_data_type_t = 7 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT64 : r_anal_data_type_t = 8 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_FLOAT : r_anal_data_type_t = 9 ; pub type r_anal_data_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_anal_data_type_t as RAnalDataType ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_op_t { pub mnemonic : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub type_ : u32 , pub prefix : RAnalOpPrefix , pub type2 : u32 , pub stackop : RAnalStackOp , pub cond : RAnalCondType , pub weakbytes : bool , pub bytes : * mut u8 , pub bytes_buf : [u8 ; 64usize] , pub size : :: std :: os :: raw :: c_int , pub tlocal : bool , pub nopcode : :: std :: os :: raw :: c_int , pub cycles : :: std :: os :: raw :: c_int , pub failcycles : :: std :: os :: raw :: c_int , pub family : RAnalOpFamily , pub id : :: std :: os :: raw :: c_int , pub eob : bool , pub sign : bool , pub delay : :: std :: os :: raw :: c_int , pub jump : u64 , pub fail : u64 , pub direction : RAnalOpDirection , pub ptr : i64 , pub val : u64 , pub ptrsize : :: std :: os :: raw :: c_int , pub stackptr : i64 , pub refptr : :: std :: os :: raw :: c_int , pub srcs : RVector , pub dsts : RVector , pub access : * mut RList , pub esil : RStrBuf , pub opex : RStrBuf , pub reg : * const :: std :: os :: raw :: c_char , pub ireg : * const :: std :: os :: raw :: c_char , pub scale : :: std :: os :: raw :: c_int , pub disp : u64 , pub switch_op : * mut RAnalSwitchOp , pub hint : RAnalHint , pub datatype : RAnalDataType , pub vliw : :: std :: os :: raw :: c_int , pub payload : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_op_t > () , 640usize , concat ! ("Size of: " , stringify ! (r_anal_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonic) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (mnemonic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type2) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (type2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackop) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (stackop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weakbytes) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (weakbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes_buf) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (bytes_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tlocal) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (tlocal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nopcode) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (nopcode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . failcycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (failcycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . family) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eob) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (eob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (sign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (direction))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrsize) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ptrsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refptr) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (refptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcs) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (srcs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dsts) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (dsts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . access) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opex) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (opex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ireg) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ireg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scale) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (scale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disp) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (disp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_op) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (switch_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datatype) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (datatype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vliw) as usize - ptr as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (vliw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . payload) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (payload))) ; } impl Default for r_anal_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalOp = r_anal_op_t ; extern "C" { pub fn r_anal_op_clone (op : * mut RAnalOp) -> * mut RAnalOp ; } extern "C" { pub fn r_anal_op_free (_op : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_op_nonlinear (t : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_op_init (op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_op_set_bytes (op : * mut RAnalOp , addr : u64 , data : * const u8 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_op_set_mnemonic (op : * mut RAnalOp , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_op_direction_tostring (op : * mut RAnalOp) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_ismemref (t : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_optype_tostring (t : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_optype_index (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_optype_from_string (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_family_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_family_from_string (f : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_hint (op : * mut RAnalOp , hint : * mut RAnalHint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_switch_op_new (addr : u64 , min_val : u64 , max_val : u64 , def_val : u64) -> * mut RAnalSwitchOp ; } extern "C" { pub fn r_anal_switch_op_free (swop : * mut RAnalSwitchOp) ; } extern "C" { pub fn r_anal_switch_op_add_case (swop : * mut RAnalSwitchOp , addr : u64 , value : u64 , jump : u64) -> * mut RAnalCaseOp ; } extern "C" { pub fn r_anal_value_new () -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_free (value : * mut RArchValue) ; } extern "C" { pub fn r_anal_value_clone (ov : * mut RArchValue) -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_new_from_string (str_ : * const :: std :: os :: raw :: c_char) -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_eval (value : * mut RArchValue) -> i64 ; } extern "C" { pub fn r_anal_value_tostring (value : * mut RArchValue) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_value_type_tostring (value : * mut RArchValue) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct HtUU_t { _unused : [u8 ; 0] , } pub type HtUU = HtUU_t ; pub type ESIL = r_esil_t ; pub type REsilHandlerCB = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , h : u32 , user : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_handler_t { pub cb : REsilHandlerCB , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_handler_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_handler_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_handler_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_esil_handler_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_handler_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_handler_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_handler_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_handler_t) , "::" , stringify ! (user))) ; } impl Default for r_esil_handler_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilHandler = r_esil_handler_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilRegAccess { pub name : * const :: std :: os :: raw :: c_char , pub value : u64 , } # [test] fn bindgen_test_layout_REsilRegAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilRegAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilRegAccess > () , 16usize , concat ! ("Size of: " , stringify ! (REsilRegAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilRegAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilRegAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilRegAccess) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilRegAccess) , "::" , stringify ! (value))) ; } impl Default for REsilRegAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilMemoryAccess { pub data : * mut :: std :: os :: raw :: c_char , pub addr : u64 , } # [test] fn bindgen_test_layout_REsilMemoryAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilMemoryAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilMemoryAccess > () , 16usize , concat ! ("Size of: " , stringify ! (REsilMemoryAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilMemoryAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilMemoryAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilMemoryAccess) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilMemoryAccess) , "::" , stringify ! (addr))) ; } impl Default for REsilMemoryAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub struct REsilTraceAccess { pub __bindgen_anon_1 : REsilTraceAccess__bindgen_ty_1 , pub is_write : bool , pub is_reg : bool , } # [repr (C)] # [derive (Copy , Clone)] pub union REsilTraceAccess__bindgen_ty_1 { pub reg : REsilRegAccess , pub mem : REsilMemoryAccess , } # [test] fn bindgen_test_layout_REsilTraceAccess__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceAccess__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceAccess__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (REsilTraceAccess__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceAccess__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceAccess__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess__bindgen_ty_1) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess__bindgen_ty_1) , "::" , stringify ! (mem))) ; } impl Default for REsilTraceAccess__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_REsilTraceAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceAccess > () , 24usize , concat ! ("Size of: " , stringify ! (REsilTraceAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_write) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess) , "::" , stringify ! (is_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reg) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess) , "::" , stringify ! (is_reg))) ; } impl Default for REsilTraceAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct REsilTraceOp { pub addr : u64 , pub start : u32 , pub end : u32 , } # [test] fn bindgen_test_layout_REsilTraceOp () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceOp > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceOp > () , 16usize , concat ! ("Size of: " , stringify ! (REsilTraceOp))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceOp > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceOp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (end))) ; } pub type RVecTraceOp = r_vec_RVecTraceOp_t ; pub type RVecAccess = r_vec_RVecAccess_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct REsilTraceDB { pub ops : RVecTraceOp , pub accesses : RVecAccess , pub loop_counts : * mut HtUU , } # [test] fn bindgen_test_layout_REsilTraceDB () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceDB > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceDB > () , 80usize , concat ! ("Size of: " , stringify ! (REsilTraceDB))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceDB > () , 16usize , concat ! ("Alignment of " , stringify ! (REsilTraceDB))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ops) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accesses) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (accesses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loop_counts) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (loop_counts))) ; } impl Default for REsilTraceDB { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_esil_trace_t { pub db : REsilTraceDB , pub idx : :: std :: os :: raw :: c_int , pub end_idx : :: std :: os :: raw :: c_int , pub cur_idx : :: std :: os :: raw :: c_int , pub registers : * mut [u64 ; 11usize] , pub memory : * mut [u64 ; 11usize] , pub arena : [* mut RRegArena ; 10usize] , pub stack_addr : u64 , pub stack_size : u64 , pub stack_data : * mut u8 , } # [test] fn bindgen_test_layout_r_esil_trace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_trace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_trace_t > () , 224usize , concat ! ("Size of: " , stringify ! (r_esil_trace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_trace_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_esil_trace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end_idx) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (end_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_idx) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (cur_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . registers) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (registers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memory) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (memory))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_addr) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_size) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_data) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_data))) ; } impl Default for r_esil_trace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilTrace = r_esil_trace_t ; pub type REsilHookRegWriteCB = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , val : * mut u64) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_callbacks_t { pub user : * mut :: std :: os :: raw :: c_void , pub hook_command : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , op : * const :: std :: os :: raw :: c_char) -> bool > , pub hook_mem_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub mem_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub hook_mem_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub mem_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub hook_reg_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , res : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool > , pub reg_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , res : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool > , pub hook_reg_write : REsilHookRegWriteCB , pub reg_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool > , } # [test] fn bindgen_test_layout_r_esil_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_callbacks_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_esil_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_command) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_command))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_mem_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_read) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_mem_write) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_mem_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (mem_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_reg_read) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_reg_write) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (reg_write))) ; } impl Default for r_esil_callbacks_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilCallbacks = r_esil_callbacks_t ; pub type REsilMemSwitch = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , idx : u32) -> bool > ; pub type REsilMemRead = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type REsilMemWrite = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_memory_interface_t { pub __bindgen_anon_1 : r_esil_memory_interface_t__bindgen_ty_1 , pub mem_switch : REsilMemSwitch , pub mem_read : REsilMemRead , pub mem_write : REsilMemWrite , } # [repr (C)] # [derive (Copy , Clone)] pub union r_esil_memory_interface_t__bindgen_ty_1 { pub mem : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_memory_interface_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_memory_interface_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_memory_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_memory_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1) , "::" , stringify ! (user))) ; } impl Default for r_esil_memory_interface_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_esil_memory_interface_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_memory_interface_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_memory_interface_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_memory_interface_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_memory_interface_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_memory_interface_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_switch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_switch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_write))) ; } impl Default for r_esil_memory_interface_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilMemInterface = r_esil_memory_interface_t ; pub type REsilIsReg = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type REsilRegRead = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char , val : * mut u64) -> bool > ; pub type REsilRegWrite = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool > ; pub type REsilRegSize = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> u32 > ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_register_interface_t { pub __bindgen_anon_1 : r_esil_register_interface_t__bindgen_ty_1 , pub is_reg : REsilIsReg , # [doc = " IsReg breaks the REsilReg prefix naming"] pub reg_read : REsilRegRead , pub reg_write : REsilRegWrite , pub reg_size : REsilRegSize , } # [repr (C)] # [derive (Copy , Clone)] pub union r_esil_register_interface_t__bindgen_ty_1 { pub reg : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_register_interface_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_register_interface_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_register_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_register_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_register_interface_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1) , "::" , stringify ! (user))) ; } impl Default for r_esil_register_interface_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_esil_register_interface_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_register_interface_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_register_interface_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_esil_register_interface_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_register_interface_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_register_interface_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (is_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_size))) ; } impl Default for r_esil_register_interface_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilRegInterface = r_esil_register_interface_t ; pub const REsilVoyeurType_R_ESIL_VOYEUR_REG_READ : REsilVoyeurType = 0 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_REG_WRITE : REsilVoyeurType = 1 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_MEM_READ : REsilVoyeurType = 2 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_MEM_WRITE : REsilVoyeurType = 3 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_OP : REsilVoyeurType = 4 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_LAST : REsilVoyeurType = 5 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_HIGH_MASK : REsilVoyeurType = 7 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_ERR : REsilVoyeurType = 4294967295 ; pub type REsilVoyeurType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_t { pub anal : * mut r_anal_t , pub stack : * mut * mut :: std :: os :: raw :: c_char , pub addrmask : u64 , pub stacksize : :: std :: os :: raw :: c_int , pub stackptr : :: std :: os :: raw :: c_int , pub skip : u32 , pub nowrite : :: std :: os :: raw :: c_int , pub iotrap : :: std :: os :: raw :: c_int , pub exectrap : :: std :: os :: raw :: c_int , pub parse_stop : :: std :: os :: raw :: c_int , pub parse_goto : :: std :: os :: raw :: c_int , pub parse_goto_count : :: std :: os :: raw :: c_int , pub verbose : :: std :: os :: raw :: c_int , pub flags : u64 , pub addr : u64 , pub stack_addr : u64 , pub stack_size : u32 , pub delay : :: std :: os :: raw :: c_int , pub jump_target : u64 , pub jump_target_set : :: std :: os :: raw :: c_int , pub trap : :: std :: os :: raw :: c_int , pub data_align : :: std :: os :: raw :: c_int , pub trap_code : u32 , pub old : u64 , pub cur : u64 , pub lastsz : u8 , pub ops : * mut [u64 ; 11usize] , pub curplug : * mut r_esil_plugin_t , pub current_opstr : * mut :: std :: os :: raw :: c_char , pub interrupts : * mut SdbMini , pub syscalls : * mut SdbMini , pub intr0 : * mut REsilHandler , pub sysc0 : * mut REsilHandler , pub plugins : * mut RList , pub active_plugins : * mut RList , pub stats : * mut Sdb , pub trace : * mut REsilTrace , pub reg_if : REsilRegInterface , pub mem_if : REsilMemInterface , pub voyeur : [RIDStorage ; 5usize] , pub cb : REsilCallbacks , pub ocb : REsilCallbacks , pub ocb_set : bool , pub cmd_step : * mut :: std :: os :: raw :: c_char , pub cmd_step_out : * mut :: std :: os :: raw :: c_char , pub cmd_intr : * mut :: std :: os :: raw :: c_char , pub cmd_trap : * mut :: std :: os :: raw :: c_char , pub cmd_mdev : * mut :: std :: os :: raw :: c_char , pub cmd_todo : * mut :: std :: os :: raw :: c_char , pub cmd_ioer : * mut :: std :: os :: raw :: c_char , pub mdev_range : * mut :: std :: os :: raw :: c_char , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , a0 : u64 , a1 : u64) -> bool > , pub user : * mut :: std :: os :: raw :: c_void , pub stack_fd : :: std :: os :: raw :: c_int , pub in_cmd_step : bool , } # [test] fn bindgen_test_layout_r_esil_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_t > () , 680usize , concat ! ("Size of: " , stringify ! (r_esil_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrmask) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (addrmask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacksize) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stacksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skip) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (skip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nowrite) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (nowrite))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iotrap) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (iotrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exectrap) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (exectrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_stop) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_goto) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_goto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_goto_count) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_goto_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_addr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump_target) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (jump_target))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump_target_set) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (jump_target_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_align) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (data_align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap_code) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trap_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastsz) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (lastsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ops) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curplug) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (curplug))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_opstr) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (current_opstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscalls) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (syscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . intr0) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (intr0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysc0) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (sysc0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . active_plugins) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (active_plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stats) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_if) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (reg_if))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_if) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (mem_if))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . voyeur) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (voyeur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocb) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ocb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocb_set) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ocb_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step_out) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_step_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_intr) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_intr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_trap) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_mdev) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_mdev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_todo) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_ioer) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_ioer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mdev_range) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (mdev_range))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_fd) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_cmd_step) as usize - ptr as usize } , 676usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (in_cmd_step))) ; } impl Default for r_esil_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsil = r_esil_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_ref_char_t { pub str_ : * mut :: std :: os :: raw :: c_char , pub cols : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_anal_ref_char_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_ref_char_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_ref_char_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_ref_char_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_ref_char_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_ref_char_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_char_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_char_t) , "::" , stringify ! (cols))) ; } impl Default for r_anal_ref_char_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRefStr = r_anal_ref_char_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub init : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil) -> * mut :: std :: os :: raw :: c_void > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil , user : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_esil_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_esil_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (fini))) ; } impl Default for r_esil_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilPlugin = r_esil_plugin_t ; extern "C" { pub fn r_esil_new (stacksize : :: std :: os :: raw :: c_int , iotrap : :: std :: os :: raw :: c_int , addrsize : :: std :: os :: raw :: c_uint) -> * mut REsil ; } extern "C" { pub fn r_esil_init (esil : * mut REsil , stacksize : :: std :: os :: raw :: c_int , iotrap : bool , addrsize : u32 , reg_if : * mut REsilRegInterface , mem_if : * mut REsilMemInterface) -> bool ; } extern "C" { pub fn r_esil_new_ex (stacksize : :: std :: os :: raw :: c_int , iotrap : bool , addrsize : u32 , reg_if : * mut REsilRegInterface , mem_if : * mut REsilMemInterface) -> * mut REsil ; } extern "C" { pub fn r_esil_new_simple (addrsize : u32 , reg : * mut :: std :: os :: raw :: c_void , iob : * mut :: std :: os :: raw :: c_void) -> * mut REsil ; } extern "C" { pub fn r_esil_add_voyeur (esil : * mut REsil , user : * mut :: std :: os :: raw :: c_void , vfn : * mut :: std :: os :: raw :: c_void , vt : REsilVoyeurType) -> u32 ; } extern "C" { pub fn r_esil_del_voyeur (esil : * mut REsil , vid : u32) ; } extern "C" { pub fn r_esil_reset (esil : * mut REsil) ; } extern "C" { pub fn r_esil_set_pc (esil : * mut REsil , addr : u64) ; } extern "C" { pub fn r_esil_setup (esil : * mut REsil , anal : * mut r_anal_t , romem : bool , stats : bool , nonull : bool) -> bool ; } extern "C" { pub fn r_esil_setup_ops (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_fini (esil : * mut REsil) ; } extern "C" { pub fn r_esil_free (esil : * mut REsil) ; } extern "C" { pub fn r_esil_runword (esil : * mut REsil , word : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_parse (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_dumpstack (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_mem_read (esil : * mut REsil , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_read_silent (esil : * mut REsil , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_write (esil : * mut REsil , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_write_silent (esil : * mut REsil , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_reg_read (esil : * mut REsil , regname : * const :: std :: os :: raw :: c_char , val : * mut u64 , size : * mut u32) -> bool ; } extern "C" { pub fn r_esil_reg_read_silent (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char , val : * mut u64 , size : * mut u32) -> bool ; } extern "C" { pub fn r_esil_reg_write (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_esil_reg_write_silent (esil : * mut REsil , dst : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_esil_pushnum (esil : * mut REsil , num : u64) -> bool ; } extern "C" { pub fn r_esil_push (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_pop (esil : * mut REsil) -> * mut :: std :: os :: raw :: c_char ; } pub type REsilOpCb = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_operation_t { pub code : REsilOpCb , pub push : u32 , pub pop : u32 , pub type_ : u32 , pub info : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_esil_operation_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_operation_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_operation_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_operation_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_operation_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_operation_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (info))) ; } impl Default for r_esil_operation_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilOp = r_esil_operation_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilC { pub esil : * mut REsil , pub sb : * mut RStrBuf , pub anal : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_REsilC () { const UNINIT : :: std :: mem :: MaybeUninit < REsilC > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilC > () , 24usize , concat ! ("Size of: " , stringify ! (REsilC))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilC > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilC))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (anal))) ; } impl Default for REsilC { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_esil_toc_new (anal : * mut r_anal_t , bits : :: std :: os :: raw :: c_int) -> * mut REsilC ; } extern "C" { pub fn r_esil_toc_free (ec : * mut REsilC) ; } extern "C" { pub fn r_esil_toc (esil : * mut REsilC , expr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_opstr (arg1 : * mut REsil , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_set_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char , code : REsilOpCb , push : u32 , pop : u32 , type_ : u32 , info : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_get_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char) -> * mut REsilOp ; } extern "C" { pub fn r_esil_del_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_esil_stack_free (esil : * mut REsil) ; } extern "C" { pub fn r_esil_condition (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm_type (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char , num : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm_size (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char , num : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_handlers_init (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_set_interrupt (esil : * mut REsil , intr_num : u32 , cb : REsilHandlerCB , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_esil_get_interrupt (esil : * mut REsil , intr_num : u32) -> REsilHandlerCB ; } extern "C" { pub fn r_esil_del_interrupt (esil : * mut REsil , intr_num : u32) ; } extern "C" { pub fn r_esil_set_syscall (esil : * mut REsil , sysc_num : u32 , cb : REsilHandlerCB , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_esil_get_syscall (esil : * mut REsil , sysc_num : u32) -> REsilHandlerCB ; } extern "C" { pub fn r_esil_del_syscall (esil : * mut REsil , sysc_num : u32) ; } extern "C" { pub fn r_esil_fire_interrupt (esil : * mut REsil , intr_num : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_do_syscall (esil : * mut REsil , sysc_num : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_handlers_fini (esil : * mut REsil) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilCompiler { pub esil : * mut REsil , pub str_ : * mut :: std :: os :: raw :: c_char , pub priv_ : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_REsilCompiler () { const UNINIT : :: std :: mem :: MaybeUninit < REsilCompiler > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilCompiler > () , 24usize , concat ! ("Size of: " , stringify ! (REsilCompiler))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilCompiler > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilCompiler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (priv_))) ; } impl Default for REsilCompiler { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_esil_compiler_new () -> * mut REsilCompiler ; } extern "C" { pub fn r_esil_compiler_reset (ec : * mut REsilCompiler) ; } extern "C" { pub fn r_esil_compiler_free (ec : * mut REsilCompiler) ; } extern "C" { pub fn r_esil_compiler_tostring (ec : * mut REsilCompiler) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_compiler_parse (ec : * mut REsilCompiler , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_compiler_unparse (ec : * mut REsilCompiler , expr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_compiler_use (ec : * mut REsilCompiler , esil : * mut REsil) ; } extern "C" { pub fn r_esil_plugins_init (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_plugins_fini (esil : * mut REsil) ; } extern "C" { pub fn r_esil_plugin_add (esil : * mut REsil , plugin : * mut REsilPlugin) -> bool ; } extern "C" { pub fn r_esil_plugin_del (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_esil_plugin_remove (esil : * mut REsil , plugin : * mut REsilPlugin) -> bool ; } extern "C" { pub fn r_esil_plugin_activate (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_plugin_deactivate (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_stats_t { pub db : * mut Sdb , pub vid : [u32 ; 5usize] , } # [test] fn bindgen_test_layout_r_esil_stats_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_stats_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_stats_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_stats_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_stats_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_stats_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_stats_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vid) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_stats_t) , "::" , stringify ! (vid))) ; } impl Default for r_esil_stats_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilStats = r_esil_stats_t ; extern "C" { pub fn r_esil_mem_ro (esil : * mut REsil , mem_readonly : bool) ; } extern "C" { pub fn r_esil_stats (esil : * mut REsil , stats : * mut REsilStats , enable : bool) ; } extern "C" { pub fn r_esil_trace_new (esil : * mut REsil) -> * mut REsilTrace ; } extern "C" { pub fn r_esil_trace_free (trace : * mut REsilTrace) ; } extern "C" { pub fn r_esil_trace_op (esil : * mut REsil , op : * mut r_anal_op_t) ; } extern "C" { pub fn r_esil_trace_list (esil : * mut REsil , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_show (esil : * mut REsil , idx : :: std :: os :: raw :: c_int , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_restore (esil : * mut REsil , idx : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_loopcount (etrace : * mut REsilTrace , addr : u64) -> u64 ; } extern "C" { pub fn r_esil_trace_loopcount_increment (etrace : * mut REsilTrace , addr : u64) ; } extern "C" { pub fn r_esil_reg_read_nocallback (esil : * mut REsil , regname : * const :: std :: os :: raw :: c_char , num : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool ; } # [repr (C)] # [derive (Copy , Clone)] pub struct r_arch_config_t { pub decoder : * mut :: std :: os :: raw :: c_char , pub arch : [:: std :: os :: raw :: c_char ; 16usize] , pub cpu : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub __bindgen_anon_1 : r_arch_config_t__bindgen_ty_1 , pub syntax : :: std :: os :: raw :: c_int , pub codealign : :: std :: os :: raw :: c_int , pub dataalign : :: std :: os :: raw :: c_int , pub addrbytes : :: std :: os :: raw :: c_int , pub segbas : :: std :: os :: raw :: c_int , pub seggrn : :: std :: os :: raw :: c_int , pub invhex : :: std :: os :: raw :: c_int , pub bitshift : :: std :: os :: raw :: c_int , pub abi : * mut :: std :: os :: raw :: c_char , pub gp : u64 , pub cfloat_profile : RCFloatProfile , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [repr (C)] # [derive (Copy , Clone)] pub union r_arch_config_t__bindgen_ty_1 { pub big_endian : :: std :: os :: raw :: c_int , pub endian : u32 , } # [test] fn bindgen_test_layout_r_arch_config_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_config_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_config_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (r_arch_config_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_config_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (r_arch_config_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t__bindgen_ty_1) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t__bindgen_ty_1) , "::" , stringify ! (endian))) ; } impl Default for r_arch_config_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_arch_config_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_config_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_config_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_arch_config_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_config_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_config_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decoder) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (decoder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (syntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codealign) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (codealign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dataalign) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (dataalign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrbytes) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (addrbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . segbas) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (segbas))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seggrn) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (seggrn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invhex) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (invhex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitshift) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (bitshift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfloat_profile) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (cfloat_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (free))) ; } impl Default for r_arch_config_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchConfig = r_arch_config_t ; pub const RAnalOpMask_R_ARCH_OP_MASK_BASIC : RAnalOpMask = 0 ; pub const RAnalOpMask_R_ARCH_OP_MASK_ESIL : RAnalOpMask = 1 ; pub const RAnalOpMask_R_ARCH_OP_MASK_VAL : RAnalOpMask = 2 ; pub const RAnalOpMask_R_ARCH_OP_MASK_HINT : RAnalOpMask = 4 ; pub const RAnalOpMask_R_ARCH_OP_MASK_OPEX : RAnalOpMask = 8 ; pub const RAnalOpMask_R_ARCH_OP_MASK_DISASM : RAnalOpMask = 16 ; pub const RAnalOpMask_R_ARCH_OP_MASK_ALL : RAnalOpMask = 31 ; pub type RAnalOpMask = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_t { pub plugins : * mut RList , pub binb : RBinBind , pub esil : * mut r_esil_t , pub num : * mut RNum , pub session : * mut r_arch_session_t , pub cfg : * mut RArchConfig , pub platform : * mut :: std :: os :: raw :: c_char , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_t > () , 136usize , concat ! ("Size of: " , stringify ! (r_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (binb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (session))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (cfg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . platform) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (platform))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (user))) ; } impl Default for r_arch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArch = r_arch_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_session_t { pub name : * mut :: std :: os :: raw :: c_char , pub arch : * mut r_arch_t , pub plugin : * mut r_arch_plugin_t , pub encoder : * mut r_arch_session_t , pub config : * mut RArchConfig , pub data : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_arch_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_session_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_arch_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encoder) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (encoder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (free))) ; } impl Default for r_arch_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchSession = r_arch_session_t ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_INIT : RArchEsilAction = 0 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_MAPS : RArchEsilAction = 1 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_RESET : RArchEsilAction = 2 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_FINI : RArchEsilAction = 3 ; pub type RArchEsilAction = :: std :: os :: raw :: c_uint ; pub type RArchDecodeMask = u32 ; pub type RArchEncodeMask = u32 ; pub type RArchModifyMask = u32 ; pub type RArchPluginInfoCallback = :: std :: option :: Option < unsafe extern "C" fn (cfg : * mut RArchSession , query : u32) -> :: std :: os :: raw :: c_int > ; pub type RArchPluginRegistersCallback = :: std :: option :: Option < unsafe extern "C" fn (ai : * mut RArchSession) -> * mut :: std :: os :: raw :: c_char > ; pub type RArchPluginMnemonicsCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RArchPluginDecodeCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchDecodeMask) -> bool > ; pub type RArchPluginEncodeCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchEncodeMask) -> bool > ; pub type RArchPluginModifyCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchModifyMask) -> bool > ; pub type RArchPluginPreludesCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> * mut RList > ; pub type RArchPluginInitCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> bool > ; pub type RArchPluginFiniCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> bool > ; pub type RArchPluginEsilCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , action : RArchEsilAction) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub cpus : * mut :: std :: os :: raw :: c_char , pub endian : u32 , pub bits : RSysBits , pub addr_bits : RSysBits , pub init : RArchPluginInitCallback , pub fini : RArchPluginFiniCallback , pub info : RArchPluginInfoCallback , pub regs : RArchPluginRegistersCallback , pub encode : RArchPluginEncodeCallback , pub decode : RArchPluginDecodeCallback , pub patch : RArchPluginModifyCallback , pub mnemonics : RArchPluginMnemonicsCallback , pub preludes : RArchPluginPreludesCallback , pub esilcb : RArchPluginEsilCallback , } # [test] fn bindgen_test_layout_r_arch_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_plugin_t > () , 184usize , concat ! ("Size of: " , stringify ! (r_arch_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpus) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (cpus))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_bits) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (addr_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (encode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (decode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (patch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonics) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (mnemonics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . preludes) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (preludes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esilcb) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (esilcb))) ; } impl Default for r_arch_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchPlugin = r_arch_plugin_t ; extern "C" { pub fn r_arch_platform_unset (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_platform_set (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_platform_list (arch : * mut RArch) ; } extern "C" { pub fn r_arch_load_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_use_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_unload_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_info (arch : * mut RArch , query : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_decode (a : * mut RArch , op : * mut RAnalOp , mask : RArchDecodeMask) -> bool ; } extern "C" { pub fn r_arch_encode (a : * mut RArch , op : * mut RAnalOp , mask : RArchEncodeMask) -> bool ; } extern "C" { pub fn r_arch_esilcb (a : * mut RArch , action : RArchEsilAction) -> bool ; } extern "C" { pub fn r_arch_session (arch : * mut RArch , cfg : * mut RArchConfig , ap : * mut RArchPlugin) -> * mut RArchSession ; } extern "C" { pub fn r_arch_session_decode (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchDecodeMask) -> bool ; } extern "C" { pub fn r_arch_session_encode (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchEncodeMask) -> bool ; } extern "C" { pub fn r_arch_session_patch (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchModifyMask) -> bool ; } extern "C" { pub fn r_arch_session_info (as_ : * mut RArchSession , q : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_session_preludes (as_ : * mut RArchSession) -> * mut RList ; } extern "C" { pub fn r_arch_new () -> * mut RArch ; } extern "C" { pub fn r_arch_find (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut RArchPlugin ; } extern "C" { pub fn r_arch_use (arch : * mut RArch , config : * mut RArchConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_plugin_add (arch : * mut RArch , ap : * mut RArchPlugin) -> bool ; } extern "C" { pub fn r_arch_plugin_remove (arch : * mut RArch , ap : * mut RArchPlugin) -> bool ; } extern "C" { pub fn r_arch_del (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_free (arch : * mut RArch) ; } extern "C" { pub fn r_arch_config_use (config : * mut RArchConfig , arch : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_arch_config_set_cpu (config : * mut RArchConfig , cpu : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_arch_config_set_syntax (config : * mut RArchConfig , syntax : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_arch_config_set_bits (c : * mut RArchConfig , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_arch_config_new () -> * mut RArchConfig ; } extern "C" { pub fn r_arch_config_clone (c : * mut RArchConfig) -> * mut RArchConfig ; } extern "C" { pub fn r_arch_config_free (arg1 : * mut RArchConfig) ; } extern "C" { pub fn r_arch_value_new () -> * mut RArchValue ; } extern "C" { pub fn r_arch_value_new_reg (regname : * const :: std :: os :: raw :: c_char) -> * mut RArchValue ; } extern "C" { pub fn r_arch_set_endian (arch : * mut RArch , endian : u32) -> bool ; } extern "C" { pub fn r_arch_set_bits (arch : * mut RArch , bits : u32) -> bool ; } extern "C" { pub fn r_arch_set_arch (arch : * mut RArch , archname : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_optype_from_string (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_optype_tostring (t : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_stackop_tostring (s : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_op_family_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_op_family_from_string (f : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_op_direction_tostring (op : * mut r_anal_op_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBraile { pub str_ : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout_RBraile () { const UNINIT : :: std :: mem :: MaybeUninit < RBraile > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBraile > () , 4usize , concat ! ("Size of: " , stringify ! (RBraile))) ; assert_eq ! (:: std :: mem :: align_of :: < RBraile > () , 1usize , concat ! ("Alignment of " , stringify ! (RBraile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBraile) , "::" , stringify ! (str_))) ; } extern "C" { pub fn r_print_braile (u : :: std :: os :: raw :: c_int) -> RBraile ; } pub type RPrintZoomCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , mode : :: std :: os :: raw :: c_int , addr : u64 , bufz : * mut u8 , size : u64) -> :: std :: os :: raw :: c_int > ; pub type RPrintNameCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintSizeCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> :: std :: os :: raw :: c_int > ; pub type RPrintCommentCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * mut :: std :: os :: raw :: c_char > ; pub type RPrintSectionGet = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintColorForByte = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , ch : u8 , verbose : bool) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintHasRefs = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_zoom_t { pub buf : * mut u8 , pub from : u64 , pub to : u64 , pub size : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_print_zoom_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_zoom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_zoom_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_print_zoom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_zoom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_zoom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (mode))) ; } impl Default for r_print_zoom_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrintZoom = r_print_zoom_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_t { pub user : * mut :: std :: os :: raw :: c_void , pub iob : RIOBind , pub pava : bool , pub coreb : RCoreBind , pub cfmt : * const :: std :: os :: raw :: c_char , pub datefmt : [:: std :: os :: raw :: c_char ; 32usize] , pub datezone : :: std :: os :: raw :: c_int , pub scr_prompt : bool , pub disasm : :: std :: option :: Option < unsafe extern "C" fn (p : * mut :: std :: os :: raw :: c_void , addr : u64) -> :: std :: os :: raw :: c_int > , pub config : * mut RArchConfig , pub width : :: std :: os :: raw :: c_int , pub limit : :: std :: os :: raw :: c_int , pub histblock : bool , pub cur_enabled : bool , pub cur : :: std :: os :: raw :: c_int , pub ocur : :: std :: os :: raw :: c_int , pub cols : :: std :: os :: raw :: c_int , pub flags : :: std :: os :: raw :: c_int , pub use_comments : bool , pub addrmod : :: std :: os :: raw :: c_int , pub col : :: std :: os :: raw :: c_int , pub stride : :: std :: os :: raw :: c_int , pub bytespace : :: std :: os :: raw :: c_int , pub pairs : :: std :: os :: raw :: c_int , pub resetbg : bool , pub zoom : * mut RPrintZoom , pub offname : RPrintNameCallback , pub offsize : RPrintSizeCallback , pub colorfor : RPrintColorForByte , pub hasrefs : RPrintHasRefs , pub get_comments : RPrintCommentCallback , pub get_section_name : RPrintSectionGet , pub formats : * mut Sdb , pub sdb_types : * mut Sdb , pub consb : RConsBind , pub num : * mut RNum , pub reg : * mut RReg , pub get_register : :: std :: option :: Option < unsafe extern "C" fn (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * mut RRegItem > , pub get_register_value : :: std :: option :: Option < unsafe extern "C" fn (reg : * mut RReg , item : * mut RRegItem) -> u64 > , pub exists_var : :: std :: option :: Option < unsafe extern "C" fn (print : * mut r_print_t , func_addr : u64 , str_ : * mut :: std :: os :: raw :: c_char) -> bool > , pub lines_cache : * mut u64 , pub lines_cache_sz : :: std :: os :: raw :: c_int , pub lines_abs : :: std :: os :: raw :: c_int , pub esc_bslash : bool , pub wide_offsets : bool , pub strconv_mode : * mut :: std :: os :: raw :: c_char , pub base36 : bool , pub vars : * mut RList , pub io_unalloc_ch : :: std :: os :: raw :: c_char , pub show_offset : bool , pub codevarname : * mut :: std :: os :: raw :: c_char , pub calc_row_offsets : bool , pub row_offsets : * mut u32 , pub row_offsets_sz : :: std :: os :: raw :: c_int , pub vflush : bool , pub screen_bounds : u64 , pub enable_progressbar : bool , pub charset : * mut RCharset , pub nbcolor : :: std :: os :: raw :: c_int , pub spinpos : :: std :: os :: raw :: c_int , pub spinmsg : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_print_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_t > () , 904usize , concat ! ("Size of: " , stringify ! (r_print_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pava) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (pava))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfmt) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cfmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datefmt) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (datefmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datezone) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (datezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scr_prompt) as usize - ptr as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (scr_prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disasm) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (disasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 548usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . histblock) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (histblock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_enabled) as usize - ptr as usize } , 553usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cur_enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 556usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocur) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (ocur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 564usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_comments) as usize - ptr as usize } , 572usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (use_comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrmod) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (addrmod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . col) as usize - ptr as usize } , 580usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (col))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stride) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (stride))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytespace) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (bytespace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pairs) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (pairs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetbg) as usize - ptr as usize } , 596usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (resetbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offname) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (offname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offsize) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (offsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colorfor) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (colorfor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hasrefs) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (hasrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_comments) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_section_name) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_section_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . formats) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (formats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_types) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (sdb_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_register) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_register))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_register_value) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_register_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exists_var) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (exists_var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_cache) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_cache_sz) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_cache_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_abs) as usize - ptr as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_abs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esc_bslash) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (esc_bslash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wide_offsets) as usize - ptr as usize } , 793usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (wide_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strconv_mode) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (strconv_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base36) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (base36))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_unalloc_ch) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (io_unalloc_ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_offset) as usize - ptr as usize } , 825usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (show_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codevarname) as usize - ptr as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (codevarname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_row_offsets) as usize - ptr as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (calc_row_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row_offsets) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (row_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row_offsets_sz) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (row_offsets_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vflush) as usize - ptr as usize } , 860usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (vflush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . screen_bounds) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (screen_bounds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_progressbar) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (enable_progressbar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charset) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbcolor) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (nbcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spinpos) as usize - ptr as usize } , 892usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (spinpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spinmsg) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (spinmsg))) ; } impl Default for r_print_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrint = r_print_t ; extern "C" { pub fn r_print_is_interrupted (p : * mut RPrint) -> bool ; } extern "C" { pub fn r_print_hexpair (p : * mut RPrint , str_ : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_printf (p : * const RPrint , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_print_hex_from_bin (p : * mut RPrint , bin_str : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_bin_from_str (p : * mut RPrint , str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_new () -> * mut RPrint ; } extern "C" { pub fn r_print_init (p : * mut RPrint) ; } extern "C" { pub fn r_print_free (p : * mut RPrint) ; } extern "C" { pub fn r_print_fini (p : * mut RPrint) -> bool ; } extern "C" { pub fn r_print_set_flags (p : * mut RPrint , _flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_unset_flags (p : * mut RPrint , flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_addr (p : * mut RPrint , addr : u64) ; } extern "C" { pub fn r_print_section (p : * mut RPrint , at : u64) ; } extern "C" { pub fn r_print_columns (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_hexii (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , step : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_hexdump (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , base : :: std :: os :: raw :: c_int , step : :: std :: os :: raw :: c_int , zoomsz : usize) ; } extern "C" { pub fn r_print_hexdump_simple (buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_jsondump (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_hexdiff (p : * mut RPrint , aa : u64 , a : * const u8 , ba : u64 , b : * const u8 , len : :: std :: os :: raw :: c_int , scndcol : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_bytes (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , sep : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_fill (p : * mut RPrint , arr : * const u8 , size : :: std :: os :: raw :: c_int , addr : u64 , step : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_byte (p : * mut RPrint , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , ch : u8) ; } extern "C" { pub fn r_print_byte_color (p : * mut RPrint , addr : u64 , ch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_c (p : * mut RPrint , str_ : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_raw (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , offlines : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_have_cursor (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_print_cursor_pointer (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_print_cursor (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_cursor_range (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , to : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_get_cursor (p : * mut RPrint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_set_cursor (p : * mut RPrint , curset : :: std :: os :: raw :: c_int , ocursor : :: std :: os :: raw :: c_int , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_code (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , lang : :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_format_t { pub p : * mut RPrint , pub pj : * mut PJ , pub depth : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub seeki : u64 , pub mode : :: std :: os :: raw :: c_int , pub slide : :: std :: os :: raw :: c_int , pub oldslide : :: std :: os :: raw :: c_int , pub ident : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_print_format_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_format_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_format_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_print_format_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_format_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_format_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seeki) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (seeki))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slide) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (slide))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldslide) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (oldslide))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ident) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (ident))) ; } impl Default for r_print_format_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrintFormat = r_print_format_t ; extern "C" { pub fn r_print_format_struct_size (p : * mut RPrint , format : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format (p : * mut RPrint , seek : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , elem : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , field : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format2 (p : * mut RPrint , seek : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , elem : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , field : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format_internal (p : * mut RPrint , pf : * mut RPrintFormat , seek : u64 , b : * const u8 , len : :: std :: os :: raw :: c_int , formatname : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , ofield : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format_byname (p : * mut RPrint , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_offset (p : * mut RPrint , off : u64 , invert : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int , label : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_offset_sg (p : * mut RPrint , off : u64 , invert : :: std :: os :: raw :: c_int , offseg : :: std :: os :: raw :: c_int , seggrn : :: std :: os :: raw :: c_int , offdec : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int , label : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_string (p : * mut RPrint , seek : u64 , str_ : * const u8 , len : :: std :: os :: raw :: c_int , options : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_dos (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_hfs (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_w32 (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_unix (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_zoom (p : * mut RPrint , cb : RPrintZoomCallback , cbarg : * mut :: std :: os :: raw :: c_void , from : u64 , to : u64 , len : :: std :: os :: raw :: c_int , maxlen : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_zoom_buf (p : * mut RPrint , cb : RPrintZoomCallback , cbarg : * mut :: std :: os :: raw :: c_void , from : u64 , to : u64 , len : :: std :: os :: raw :: c_int , maxlen : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_progressbar (pr : * mut RPrint , pc : :: std :: os :: raw :: c_int , _cols : :: std :: os :: raw :: c_int , title : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_progressbar_with_count (pr : * mut RPrint , pc : :: std :: os :: raw :: c_uint , total : :: std :: os :: raw :: c_uint , _cols : :: std :: os :: raw :: c_int , reset_line : bool) ; } extern "C" { pub fn r_print_spinbar (p : * mut RPrint , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_portionbar (p : * mut RPrint , portions : * const u64 , n_portions : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_rangebar (p : * mut RPrint , startA : u64 , endA : u64 , min : u64 , max : u64 , cols : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_randomart (dgst_raw : * const u8 , dgst_raw_len : u32 , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_2bpp_row (p : * mut RPrint , buf : * mut u8 , colors : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_2bpp_tiles (p : * mut RPrint , buf : * mut u8 , buflen : usize , tiles : u32 , colors : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_colorize_opcode (print : * mut RPrint , p : * mut :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , num : * const :: std :: os :: raw :: c_char , partial_reset : bool , func_addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_color_op_type (p : * mut RPrint , anal_type : u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_set_interrupted (i : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_init_rowoffsets (p : * mut RPrint) ; } extern "C" { pub fn r_print_rowoff (p : * mut RPrint , i : :: std :: os :: raw :: c_int) -> u32 ; } extern "C" { pub fn r_print_set_rowoff (p : * mut RPrint , i : :: std :: os :: raw :: c_int , offset : u32 , overwrite : bool) ; } extern "C" { pub fn r_print_row_at_off (p : * mut RPrint , offset : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_pie (p : * mut RPrint , nvalues : :: std :: os :: raw :: c_int , values : * mut :: std :: os :: raw :: c_int , text : * mut * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_treemap (n : :: std :: os :: raw :: c_int , values : * mut :: std :: os :: raw :: c_int , labels : * mut * const :: std :: os :: raw :: c_char , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_graphline (print : * mut RPrint , buf : * const u8 , len : usize) ; } extern "C" { pub fn r_print_unpack7bit (src : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_pack7bit (src : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram_bytes (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram (bump : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram_render (p : * mut RPrint , buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_set_screenbounds (p : * mut RPrint , addr : u64) ; } extern "C" { pub fn r_util_lines_getline (lines_cache : * mut u64 , lines_cache_sz : :: std :: os :: raw :: c_int , off : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_json_indent (s : * const :: std :: os :: raw :: c_char , color : bool , tab : * const :: std :: os :: raw :: c_char , colors : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_json_human (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_json_path (s : * const :: std :: os :: raw :: c_char , pos : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_code_tocolor (s : * const :: std :: os :: raw :: c_char , cc : * mut RConsCodeColors) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_code_indent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_search_keyword_t { pub bin_keyword : * mut u8 , pub bin_binmask : * mut u8 , pub keyword_length : u32 , pub binmask_length : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub count : :: std :: os :: raw :: c_int , pub kwidx : :: std :: os :: raw :: c_int , pub icase : bool , pub type_ : :: std :: os :: raw :: c_int , pub last : u64 , pub align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_search_keyword_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_search_keyword_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_search_keyword_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_search_keyword_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_search_keyword_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_search_keyword_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_keyword) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (bin_keyword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_binmask) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (bin_binmask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyword_length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (keyword_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binmask_length) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (binmask_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kwidx) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (kwidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icase) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (icase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (align))) ; } impl Default for r_search_keyword_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSearchKeyword = r_search_keyword_t ; pub type RSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (kw : * mut RSearchKeyword , user : * mut :: std :: os :: raw :: c_void , where_ : u64) -> :: std :: os :: raw :: c_int > ; pub type RSearchRCb = :: std :: option :: Option < unsafe extern "C" fn (kw : * mut RSearchKeyword , mlen : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void , where_ : u64) -> :: std :: os :: raw :: c_int > ; pub type RSearchDFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_search_t { pub n_kws : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub longest : :: std :: os :: raw :: c_int , pub pattern_size : u32 , pub string_min : u32 , pub string_max : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub datafree : RSearchDFree , pub user : * mut :: std :: os :: raw :: c_void , pub callback : RSearchCallback , pub r_callback : RSearchRCb , pub nhits : u64 , pub maxhits : u64 , pub hits : * mut RList , pub distance : :: std :: os :: raw :: c_int , pub inverse : :: std :: os :: raw :: c_int , pub overlap : bool , pub contiguous : :: std :: os :: raw :: c_int , pub align : :: std :: os :: raw :: c_int , pub update : :: std :: option :: Option < unsafe extern "C" fn (s : * mut r_search_t , from : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub kws : * mut RList , pub iob : RIOBind , pub consb : RConsBind , pub bckwrds : :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_search_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_search_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_search_t > () , 496usize , concat ! ("Size of: " , stringify ! (r_search_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_search_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_search_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_kws) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (n_kws))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . longest) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (longest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pattern_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (pattern_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_min) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (string_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_max) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (string_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datafree) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (datafree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_callback) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (r_callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nhits) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (nhits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxhits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (maxhits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hits) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (hits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . distance) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (distance))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inverse) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (inverse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlap) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (overlap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contiguous) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (contiguous))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kws) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (kws))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bckwrds) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (bckwrds))) ; } impl Default for r_search_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSearch = r_search_t ; extern "C" { pub fn r_search_new (mode : :: std :: os :: raw :: c_int) -> * mut RSearch ; } extern "C" { pub fn r_search_set_mode (s : * mut RSearch , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_free (s : * mut RSearch) ; } extern "C" { pub fn r_search_find (s : * mut RSearch , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_search_find_uds (search : * mut RSearch , addr : u64 , data : * const u8 , size : usize , verbose : bool) -> * mut RList ; } extern "C" { pub fn r_search_update (s : * mut RSearch , from : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_long) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_update_read (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_maps (s : * mut RSearch , maps : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_keyword_free (kw : * mut RSearchKeyword) ; } extern "C" { pub fn r_search_keyword_new (kw : * const u8 , kwlen : :: std :: os :: raw :: c_int , bm : * const u8 , bmlen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_str (kw : * const :: std :: os :: raw :: c_char , bm : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , icase : bool) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hexstr (xs : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_wide (kw : * const :: std :: os :: raw :: c_char , bm : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , icase : bool , be : bool) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hex (kwstr : * const :: std :: os :: raw :: c_char , bmstr : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hexmask (kwstr : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_regexp (str_ : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_kw_add (s : * mut RSearch , kw : * mut RSearchKeyword) -> bool ; } extern "C" { pub fn r_search_reset (s : * mut RSearch , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_search_kw_reset (s : * mut RSearch) ; } extern "C" { pub fn r_search_string_prepare_backward (s : * mut RSearch) ; } extern "C" { pub fn r_search_range_add (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_range_set (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_range_reset (s : * mut RSearch) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_hit_new (s : * mut RSearch , kw : * mut RSearchKeyword , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_set_distance (s : * mut RSearch , dist : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_search_strings (s : * mut RSearch , min : u32 , max : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_set_string_limits (s : * mut RSearch , min : u32 , max : u32) -> bool ; } extern "C" { pub fn r_search_set_callback (s : * mut RSearch , callback : RSearchCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_search_set_read_cb (s : * mut RSearch , cb : RSearchRCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_search_begin (s : * mut RSearch) ; } extern "C" { pub fn r_search_pattern_size (s : * mut RSearch , size : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub swi : :: std :: os :: raw :: c_int , pub num : :: std :: os :: raw :: c_int , pub args : :: std :: os :: raw :: c_int , pub sargs : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_syscall_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_syscall_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sargs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (sargs))) ; } impl Default for r_syscall_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscallItem = r_syscall_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_port_t { pub port : :: std :: os :: raw :: c_int , pub name : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_syscall_port_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_port_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_port_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_syscall_port_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_port_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_port_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_port_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_port_t) , "::" , stringify ! (name))) ; } impl Default for r_syscall_port_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscallPort = r_syscall_port_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_t { pub fd : * mut FILE , pub arch : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub cpu : * mut :: std :: os :: raw :: c_char , pub sysptr : * mut RSyscallItem , pub sysport : * mut RSyscallPort , pub db : * mut Sdb , pub srdb : * mut Sdb , pub refs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_syscall_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_syscall_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (sysptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysport) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (sysport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srdb) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (srdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (refs))) ; } impl Default for r_syscall_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscall = r_syscall_t ; extern "C" { pub fn r_syscall_item_new_from_string (name : * const :: std :: os :: raw :: c_char , s : * const :: std :: os :: raw :: c_char) -> * mut RSyscallItem ; } extern "C" { pub fn r_syscall_item_free (si : * mut RSyscallItem) ; } extern "C" { pub fn r_syscall_new () -> * mut RSyscall ; } extern "C" { pub fn r_syscall_free (ctx : * mut RSyscall) ; } extern "C" { pub fn r_syscall_ref (sc : * mut RSyscall) -> * mut RSyscall ; } extern "C" { pub fn r_syscall_setup (s : * mut RSyscall , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , cpu : * const :: std :: os :: raw :: c_char , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscall_get (ctx : * mut RSyscall , num : :: std :: os :: raw :: c_int , swi : :: std :: os :: raw :: c_int) -> * mut RSyscallItem ; } extern "C" { pub fn r_syscall_get_num (ctx : * mut RSyscall , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_syscall_get_i (ctx : * mut RSyscall , num : :: std :: os :: raw :: c_int , swi : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscall_sysreg (s : * mut RSyscall , type_ : * const :: std :: os :: raw :: c_char , num : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscall_list (ctx : * mut RSyscall) -> * mut RList ; } extern "C" { pub fn r_syscall_get_swi (s : * mut RSyscall) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_syscall_get_io (s : * mut RSyscall , ioport : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_zone_item_t { pub from : u64 , pub to : u64 , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_flag_zone_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_zone_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_zone_item_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_flag_zone_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_zone_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_zone_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (name))) ; } impl Default for r_flag_zone_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagZoneItem = r_flag_zone_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_item_meta_t { pub type_ : * mut :: std :: os :: raw :: c_char , pub color : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub alias : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_flag_item_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_item_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_item_meta_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_flag_item_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_item_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_item_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (alias))) ; } impl Default for r_flag_item_meta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagItemMeta = r_flag_item_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_item_t { pub id : u32 , pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub rawname : * mut :: std :: os :: raw :: c_char , pub demangled : bool , pub addr : u64 , pub size : u64 , pub space : * mut RSpace , } # [test] fn bindgen_test_layout_r_flag_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_item_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_flag_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawname) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (rawname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangled) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (demangled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (space))) ; } impl Default for r_flag_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagItem = r_flag_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_t { pub spaces : RSpaces , pub base : i64 , pub realnames : bool , pub autospace : bool , pub tags : * mut Sdb , pub num : * mut RNum , pub by_addr : * mut RSkipList , pub ht_name : * mut [u64 ; 11usize] , pub ht_meta : * mut [u64 ; 11usize] , pub zones : * mut RList , pub mask : u64 , pub lock : * mut RThreadLock , pub lastid : u32 , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_flag_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_flag_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spaces) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realnames) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (realnames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autospace) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (autospace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . by_addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (by_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_name) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (ht_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_meta) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (ht_meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zones) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (zones))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastid) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (lastid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_flag_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlag = r_flag_t ; pub type RFlagExistAt = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , flag_prefix : * const :: std :: os :: raw :: c_char , fp_size : u16 , addr : u64) -> bool > ; pub type RFlagGet = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagItem > ; pub type RFlagGetAtAddr = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , prionospace : bool , arg1 : u64) -> * mut RFlagItem > ; pub type RFlagGetAt = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64 , closest : bool) -> * mut RFlagItem > ; pub type RFlagGetList = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64) -> * const RList > ; pub type RFlagSet = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem > ; pub type RFlagUnset = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , item : * mut RFlagItem) -> bool > ; pub type RFlagUnsetName = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RFlagUnsetOff = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64) -> bool > ; pub type RFlagSetSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace > ; pub type RFlagPopSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag) -> bool > ; pub type RFlagPushSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RFlagItemCb = :: std :: option :: Option < unsafe extern "C" fn (fi : * mut RFlagItem , user : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_bind_t { pub init : :: std :: os :: raw :: c_int , pub f : * mut RFlag , pub exist_at : RFlagExistAt , pub get : RFlagGet , pub get_at : RFlagGetAt , pub get_list : RFlagGetList , pub set : RFlagSet , pub unset : RFlagUnset , pub unset_name : RFlagUnsetName , pub unset_addr : RFlagUnsetOff , pub set_fs : RFlagSetSpace , pub push_fs : RFlagPushSpace , pub pop_fs : RFlagPopSpace , } # [test] fn bindgen_test_layout_r_flag_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_bind_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_flag_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exist_at) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (exist_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_at) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_list) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset_name) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset_addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_fs) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (set_fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push_fs) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (push_fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop_fs) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (pop_fs))) ; } impl Default for r_flag_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagBind = r_flag_bind_t ; extern "C" { pub fn r_flag_get_meta (f : * mut RFlag , id : u32) -> * mut RFlagItemMeta ; } extern "C" { pub fn r_flag_get_meta2 (f : * mut RFlag , id : u32) -> * mut RFlagItemMeta ; } extern "C" { pub fn r_flag_del_meta (f : * mut RFlag , id : u32) ; } extern "C" { pub fn r_flag_bind (io : * mut RFlag , bnd : * mut RFlagBind) ; } extern "C" { pub fn r_flag_new () -> * mut RFlag ; } extern "C" { pub fn r_flag_free (f : * mut RFlag) ; } extern "C" { pub fn r_flag_list (f : * mut RFlag , rad : :: std :: os :: raw :: c_int , pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_exist_at (f : * mut RFlag , flag_prefix : * const :: std :: os :: raw :: c_char , fp_size : u16 , addr : u64) -> bool ; } extern "C" { pub fn r_flag_get (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_in (f : * mut RFlag , addr : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_by_spaces (f : * mut RFlag , prionospace : bool , addr : u64 , ...) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_at (f : * mut RFlag , addr : u64 , closest : bool) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_closest_in_space (f : * mut RFlag , space : * const :: std :: os :: raw :: c_char , addr : u64 , radius : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_closest_with_prefix (f : * mut RFlag , pfx : * const :: std :: os :: raw :: c_char , addr : u64 , radius : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_all_list (f : * mut RFlag , by_space : bool) -> * mut RList ; } extern "C" { pub fn r_flag_get_list (f : * mut RFlag , addr : u64) -> * const RList ; } extern "C" { pub fn r_flag_get_liststr (f : * mut RFlag , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_unset (f : * mut RFlag , item : * mut RFlagItem) -> bool ; } extern "C" { pub fn r_flag_unset_name (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_unset_addr (f : * mut RFlag , addr : u64) -> bool ; } extern "C" { pub fn r_flag_unset_all (f : * mut RFlag) ; } extern "C" { pub fn r_flag_set (fo : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_set_inspace (f : * mut RFlag , space : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_set_next (fo : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_item_free (item : * mut RFlagItem) ; } extern "C" { pub fn r_flag_item_clone (item : * mut RFlagItem) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_item_set_type (f : * mut RFlag , fi : * mut RFlagItem , type_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_alias (f : * mut RFlag , item : * mut RFlagItem , alias : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_comment (f : * mut RFlag , fi : * mut RFlagItem , comment : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_realname (f : * mut RFlag , fi : * mut RFlagItem , realname : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_color (f : * mut RFlag , item : * mut RFlagItem , color : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_unset_glob (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_rename (f : * mut RFlag , item : * mut RFlagItem , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_relocate (f : * mut RFlag , addr : u64 , addr_mask : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_move (f : * mut RFlag , at : u64 , to : u64) -> bool ; } extern "C" { pub fn r_flag_count (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_foreach (f : * mut RFlag , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_prefix (f : * mut RFlag , pfx : * const :: std :: os :: raw :: c_char , pfx_len : :: std :: os :: raw :: c_int , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_range (f : * mut RFlag , from : u64 , to : u64 , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_glob (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_space (f : * mut RFlag , space : * const RSpace , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_space_glob (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char , space : * const RSpace , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_tags_list (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_tags_set (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char , words : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_tags_reset (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_flag_tags_get (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_zone_item_free (a : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_zone_add (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_flag_zone_del (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_zone_get (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagZoneItem ; } extern "C" { pub fn r_flag_zone_around (fz : * mut RFlag , addr : u64 , prev : * mut * const :: std :: os :: raw :: c_char , next : * mut * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_zone_list (fz : * mut RFlag , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_zone_reset (f : * mut RFlag) -> bool ; } extern "C" { pub fn r_flag_zone_barlist (f : * mut RFlag , from : u64 , bsize : u64 , rows : :: std :: os :: raw :: c_int) -> * mut RList ; } pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_KEYWORD : r_syntax_highlight_type_t = 0 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_COMMENT : r_syntax_highlight_type_t = 1 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_DATATYPE : r_syntax_highlight_type_t = 2 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_FUNCTION_NAME : r_syntax_highlight_type_t = 3 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_FUNCTION_PARAMETER : r_syntax_highlight_type_t = 4 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_LOCAL_VARIABLE : r_syntax_highlight_type_t = 5 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_CONSTANT_VARIABLE : r_syntax_highlight_type_t = 6 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_GLOBAL_VARIABLE : r_syntax_highlight_type_t = 7 ; pub type r_syntax_highlight_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_syntax_highlight_type_t as RSyntaxHighlightType ; # [doc = "< Gives the offset of the specified range in annotation."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_OFFSET : r_code_annotation_type_t = 0 ; # [doc = "< Represents the kind of data the specified range represents for highlighting purposes."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_SYNTAX_HIGHLIGHT : r_code_annotation_type_t = 1 ; # [doc = "< Specified range in annotation represents a function name."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_FUNCTION_NAME : r_code_annotation_type_t = 2 ; # [doc = "< Specified range in annotation represents a global variable."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_GLOBAL_VARIABLE : r_code_annotation_type_t = 3 ; # [doc = "< Specified range in annotation represents a constant variable with an address."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_CONSTANT_VARIABLE : r_code_annotation_type_t = 4 ; # [doc = "< Specified range in annotation represents a local variable."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_LOCAL_VARIABLE : r_code_annotation_type_t = 5 ; # [doc = "< Specified range in annotation represents a function parameter."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_FUNCTION_PARAMETER : r_code_annotation_type_t = 6 ; # [doc = " Represents the type of annnotation."] pub type r_code_annotation_type_t = :: std :: os :: raw :: c_uint ; # [doc = " Represents the type of annnotation."] pub use self :: r_code_annotation_type_t as RCodeMetaItemType ; # [doc = " \\brief Annotations for the decompiled code are represented using this structure."] # [repr (C)] # [derive (Copy , Clone)] pub struct r_codemeta_item_t { pub start : usize , pub end : usize , pub type_ : RCodeMetaItemType , pub __bindgen_anon_1 : r_codemeta_item_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_codemeta_item_t__bindgen_ty_1 { pub offset : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 , pub syntax_highlight : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 , pub reference : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 , pub variable : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 { pub offset : u64 , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 { pub type_ : RSyntaxHighlightType , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (type_))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 { pub name : * mut :: std :: os :: raw :: c_char , pub offset : u64 , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (offset))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 { pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (name))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax_highlight) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (syntax_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reference) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (reference))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . variable) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (variable))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_codemeta_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (type_))) ; } impl Default for r_codemeta_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " \\brief Annotations for the decompiled code are represented using this structure."] pub type RCodeMetaItem = r_codemeta_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_t { # [doc = "< Decompiled code. RCodeMeta owns this string and it must free it."] pub code : * mut :: std :: os :: raw :: c_char , # [doc = "< @ref RVector <RCodeMetaItem> contains the list of annotations for the decompiled code."] pub annotations : RVector , pub tree : * mut RRBTree , } # [test] fn bindgen_test_layout_r_codemeta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_codemeta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . annotations) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (annotations))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (tree))) ; } impl Default for r_codemeta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCodeMeta = r_codemeta_t ; extern "C" { pub fn r_codemeta_new (code : * const :: std :: os :: raw :: c_char) -> * mut RCodeMeta ; } extern "C" { pub fn r_codemeta_free (code : * mut RCodeMeta) ; } extern "C" { pub fn r_codemeta_item_new () -> * mut RCodeMetaItem ; } extern "C" { pub fn r_codemeta_item_free (e : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_item_fini (e : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_item_is_reference (annotation : * mut RCodeMetaItem) -> bool ; } extern "C" { pub fn r_codemeta_item_is_variable (annotation : * mut RCodeMetaItem) -> bool ; } extern "C" { pub fn r_codemeta_add_item (code : * mut RCodeMeta , annotation : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_print (code : * mut RCodeMeta , line_offsets : * mut RVector) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print2 (code : * mut RCodeMeta , line_offsets : * mut RVector , anal : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_disasm (code : * mut RCodeMeta , line_offsets : * mut RVector , anal : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_comment_cmds (code : * mut RCodeMeta) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_json (code : * mut RCodeMeta) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_at (code : * mut RCodeMeta , offset : usize) -> * mut RPVector ; } extern "C" { pub fn r_codemeta_in (code : * mut RCodeMeta , start : usize , end : usize) -> * mut RPVector ; } extern "C" { pub fn r_codemeta_line_offsets (code : * mut RCodeMeta) -> * mut RVector ; } extern "C" { pub fn r_codemeta_item_clone (code : * mut RCodeMetaItem) -> * mut RCodeMetaItem ; } extern "C" { pub fn r_codemeta_clone (code : * mut RCodeMeta) -> * mut RCodeMeta ; } pub type SetU = [u64 ; 11usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_dwarf_context { pub info : * const RBinDwarfDebugInfo , pub loc : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_anal_dwarf_context () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_dwarf_context > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_dwarf_context > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_dwarf_context))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_dwarf_context > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_dwarf_context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_dwarf_context) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_dwarf_context) , "::" , stringify ! (loc))) ; } impl Default for r_anal_dwarf_context { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalDwarfContext = r_anal_dwarf_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_range_t { pub from : u64 , pub to : u64 , pub bits : :: std :: os :: raw :: c_int , pub rb_max_addr : u64 , pub rb : RBNode , } # [test] fn bindgen_test_layout_r_anal_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_range_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_anal_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_max_addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (rb_max_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (rb))) ; } impl Default for r_anal_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRange = r_anal_range_t ; pub type RAnalType = r_anal_type_t ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_STRUCT : RAnalBaseTypeKind = 0 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_UNION : RAnalBaseTypeKind = 1 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_ENUM : RAnalBaseTypeKind = 2 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_TYPEDEF : RAnalBaseTypeKind = 3 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_ATOMIC : RAnalBaseTypeKind = 4 ; pub type RAnalBaseTypeKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_struct_t { pub members : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_struct_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_struct_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_struct_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_struct_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_struct_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_struct_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . members) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_struct_t) , "::" , stringify ! (members))) ; } impl Default for r_anal_base_type_struct_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeStruct = r_anal_base_type_struct_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_union_t { pub members : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_union_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_union_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_union_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_union_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_union_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_union_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . members) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_union_t) , "::" , stringify ! (members))) ; } impl Default for r_anal_base_type_union_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeUnion = r_anal_base_type_union_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_enum_t { pub cases : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_enum_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_enum_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_enum_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_enum_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_enum_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_enum_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cases) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_enum_t) , "::" , stringify ! (cases))) ; } impl Default for r_anal_base_type_enum_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeEnum = r_anal_base_type_enum_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_anal_base_type_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub size : u64 , pub kind : RAnalBaseTypeKind , pub __bindgen_anon_1 : r_anal_base_type_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_anal_base_type_t__bindgen_ty_1 { pub struct_data : RAnalBaseTypeStruct , pub enum_data : RAnalBaseTypeEnum , pub union_data : RAnalBaseTypeUnion , } # [test] fn bindgen_test_layout_r_anal_base_type_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_t__bindgen_ty_1 > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . struct_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (struct_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enum_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (enum_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . union_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (union_data))) ; } impl Default for r_anal_base_type_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_anal_base_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (kind))) ; } impl Default for r_anal_base_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseType = r_anal_base_type_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_diff_t { pub type_ : :: std :: os :: raw :: c_int , pub addr : u64 , pub dist : f64 , pub name : * mut :: std :: os :: raw :: c_char , pub size : u32 , } # [test] fn bindgen_test_layout_r_anal_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_diff_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_anal_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (dist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (size))) ; } impl Default for r_anal_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalDiff = r_anal_diff_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_function_meta_t { pub _min : u64 , pub _max : u64 , pub numrefs : :: std :: os :: raw :: c_int , pub numcallrefs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_function_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_meta_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_function_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _min) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _max) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numrefs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (numrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numcallrefs) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (numcallrefs))) ; } pub type RAnalFcnMeta = r_anal_function_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_function_t { pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , pub callconv : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub labels : * mut [u64 ; 11usize] , pub label_addrs : * mut [u64 ; 11usize] , pub vars : RPVector , pub inst_vars : * mut [u64 ; 11usize] , pub reg_save_area : u64 , pub bp_off : i64 , pub stack : i64 , pub maxstack : :: std :: os :: raw :: c_int , pub ninstr : :: std :: os :: raw :: c_int , pub folded : bool , pub is_pure : bool , pub is_variadic : bool , pub has_changed : bool , pub bp_frame : bool , pub is_noreturn : bool , pub fingerprint : * mut u8 , pub fingerprint_size : usize , pub diff : * mut RAnalDiff , pub bbs : * mut RList , pub meta : RAnalFcnMeta , pub imports : * mut RList , pub anal : * mut r_anal_t , pub ts : u64 , } # [test] fn bindgen_test_layout_r_anal_function_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_anal_function_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callconv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (callconv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (labels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label_addrs) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (label_addrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inst_vars) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (inst_vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_save_area) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (reg_save_area))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_off) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bp_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstack) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (maxstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninstr) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (ninstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . folded) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (folded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_pure) as usize - ptr as usize } , 145usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_pure))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_variadic) as usize - ptr as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_variadic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_changed) as usize - ptr as usize } , 147usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (has_changed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_frame) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bp_frame))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_noreturn) as usize - ptr as usize } , 149usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (fingerprint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_size) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (fingerprint_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (diff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbs) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (ts))) ; } impl Default for r_anal_function_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalFunction = r_anal_function_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_type_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : u32 , pub size : u32 , pub content : * mut RList , } # [test] fn bindgen_test_layout_r_anal_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_type_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (content))) ; } impl Default for r_anal_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RAnalMetaType_R_META_TYPE_ANY : RAnalMetaType = - 1 ; pub const RAnalMetaType_R_META_TYPE_BIND : RAnalMetaType = 98 ; pub const RAnalMetaType_R_META_TYPE_CODE : RAnalMetaType = 99 ; pub const RAnalMetaType_R_META_TYPE_DATA : RAnalMetaType = 100 ; pub const RAnalMetaType_R_META_TYPE_STRING : RAnalMetaType = 115 ; pub const RAnalMetaType_R_META_TYPE_FORMAT : RAnalMetaType = 102 ; pub const RAnalMetaType_R_META_TYPE_MAGIC : RAnalMetaType = 109 ; pub const RAnalMetaType_R_META_TYPE_HIDE : RAnalMetaType = 104 ; pub const RAnalMetaType_R_META_TYPE_COMMENT : RAnalMetaType = 67 ; pub const RAnalMetaType_R_META_TYPE_RUN : RAnalMetaType = 114 ; pub const RAnalMetaType_R_META_TYPE_HIGHLIGHT : RAnalMetaType = 72 ; pub const RAnalMetaType_R_META_TYPE_VARTYPE : RAnalMetaType = 116 ; pub type RAnalMetaType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_meta_item_t { pub type_ : u8 , pub subtype : u8 , pub str_ : * mut :: std :: os :: raw :: c_char , pub space : * const RSpace , } # [test] fn bindgen_test_layout_r_anal_meta_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_meta_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_meta_item_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_meta_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_meta_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_meta_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subtype) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (subtype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (space))) ; } impl Default for r_anal_meta_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalMetaItem = r_anal_meta_item_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_callbacks_t { pub on_fcn_new : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > , pub on_fcn_delete : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > , pub on_fcn_rename : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction , oldname : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub on_fcn_bb_new : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction , bb : * mut r_anal_bb_t) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_anal_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_callbacks_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_new) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_delete) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_delete))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_rename) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_rename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_bb_new) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_bb_new))) ; } pub type RAnalCallbacks = r_anal_callbacks_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_options_t { pub depth : :: std :: os :: raw :: c_int , pub graph_depth : :: std :: os :: raw :: c_int , pub vars : bool , pub varname_stack : bool , pub var_newstack : bool , pub cjmpref : :: std :: os :: raw :: c_int , pub jmpref : :: std :: os :: raw :: c_int , pub jmpabove : :: std :: os :: raw :: c_int , pub ijmp : bool , pub jmpmid : bool , pub loads : bool , pub ignbithints : bool , pub followdatarefs : :: std :: os :: raw :: c_int , pub searchstringrefs : :: std :: os :: raw :: c_int , pub followbrokenfcnsrefs : :: std :: os :: raw :: c_int , pub bb_max_size : :: std :: os :: raw :: c_int , pub trycatch : bool , pub norevisit : bool , pub recont : :: std :: os :: raw :: c_int , pub noncode : :: std :: os :: raw :: c_int , pub nopskip : bool , pub hpskip : :: std :: os :: raw :: c_int , pub jmptbl : :: std :: os :: raw :: c_int , pub nonull : :: std :: os :: raw :: c_int , pub pushret : bool , pub armthumb : bool , pub delay : bool , pub tailcall : bool , pub tailcall_delta : :: std :: os :: raw :: c_int , pub retpoline : bool , pub propagate_noreturn : bool , pub recursive_noreturn : bool , pub slow : bool , pub flagends : bool , pub zigndups : bool , pub icods : bool , pub tparser : * mut :: std :: os :: raw :: c_char , pub dynprefix : bool , pub defprefix : * const :: std :: os :: raw :: c_char , pub prefix_marker : * const :: std :: os :: raw :: c_char , pub prefix_radius : u64 , } # [test] fn bindgen_test_layout_r_anal_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_options_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_anal_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_depth) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (graph_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varname_stack) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (varname_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_newstack) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (var_newstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmpref) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (cjmpref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpref) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpabove) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpabove))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ijmp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (ijmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpmid) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpmid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loads) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (loads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignbithints) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (ignbithints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . followdatarefs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (followdatarefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . searchstringrefs) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (searchstringrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . followbrokenfcnsrefs) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (followbrokenfcnsrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_max_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (bb_max_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trycatch) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (trycatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . norevisit) as usize - ptr as usize } , 45usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (norevisit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recont) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (recont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . noncode) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (noncode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nopskip) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (nopskip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpskip) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (hpskip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmptbl) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmptbl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nonull) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (nonull))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pushret) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (pushret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . armthumb) as usize - ptr as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (armthumb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tailcall) as usize - ptr as usize } , 75usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tailcall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tailcall_delta) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tailcall_delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retpoline) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (retpoline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . propagate_noreturn) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (propagate_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recursive_noreturn) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (recursive_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slow) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (slow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flagends) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (flagends))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zigndups) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (zigndups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icods) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (icods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparser) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tparser))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dynprefix) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (dynprefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defprefix) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (defprefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix_marker) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (prefix_marker))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix_radius) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (prefix_radius))) ; } impl Default for r_anal_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalOptions = r_anal_options_t ; pub const RAnalCPPABI_R_ANAL_CPP_ABI_ITANIUM : RAnalCPPABI = 0 ; pub const RAnalCPPABI_R_ANAL_CPP_ABI_MSVC : RAnalCPPABI = 1 ; pub type RAnalCPPABI = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_hint_cb_t { pub on_bits : :: std :: option :: Option < unsafe extern "C" fn (a : * mut r_anal_t , addr : u64 , bits : :: std :: os :: raw :: c_int , set : bool) > , } # [test] fn bindgen_test_layout_r_anal_hint_cb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_hint_cb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_hint_cb_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_anal_hint_cb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_hint_cb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_hint_cb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_cb_t) , "::" , stringify ! (on_bits))) ; } pub type RHintCb = r_anal_hint_cb_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_thread_t { pub id : :: std :: os :: raw :: c_int , pub map : :: std :: os :: raw :: c_int , pub birth : u64 , pub reg : * mut RReg , } # [test] fn bindgen_test_layout_r_anal_thread_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_thread_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_thread_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_thread_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_thread_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_thread_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . birth) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (birth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (reg))) ; } impl Default for r_anal_thread_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalThread = r_anal_thread_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RAnalBacktraces { pub priv_ : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_RAnalBacktraces () { const UNINIT : :: std :: mem :: MaybeUninit < RAnalBacktraces > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RAnalBacktraces > () , 8usize , concat ! ("Size of: " , stringify ! (RAnalBacktraces))) ; assert_eq ! (:: std :: mem :: align_of :: < RAnalBacktraces > () , 8usize , concat ! ("Alignment of " , stringify ! (RAnalBacktraces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RAnalBacktraces) , "::" , stringify ! (priv_))) ; } impl Default for RAnalBacktraces { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ref_manager_t { _unused : [u8 ; 0] , } pub type RefManager = r_ref_manager_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_t { pub config : * mut RArchConfig , pub lineswidth : :: std :: os :: raw :: c_int , pub sleep : :: std :: os :: raw :: c_int , pub cxxabi : RAnalCPPABI , pub user : * mut :: std :: os :: raw :: c_void , pub gp : u64 , pub bb_tree : RBTree , pub fcns : * mut RList , pub ht_addr_fun : * mut [u64 ; 11usize] , pub ht_name_fun : * mut [u64 ; 11usize] , pub reg : * mut RReg , pub last_disasm_reg : * mut u8 , pub last_disasm_reg_size : :: std :: os :: raw :: c_int , pub syscall : * mut RSyscall , pub diff_ops : bool , pub diff_thbb : f64 , pub diff_thfcn : f64 , pub iob : RIOBind , pub flb : RFlagBind , pub flg_class_set : RFlagSet , pub flg_class_get : RFlagGet , pub flg_fcn_set : RFlagSet , pub binb : RBinBind , pub coreb : RCoreBind , pub maxreflines : :: std :: os :: raw :: c_int , pub esil_goto_limit : :: std :: os :: raw :: c_int , pub esil : * mut REsil , pub cur : * mut r_anal_plugin_t , pub arch : * mut RArch , pub limit : * mut RAnalRange , pub plugins : * mut RList , pub sdb_types : * mut Sdb , pub sdb_fmts : * mut Sdb , pub sdb_zigns : * mut Sdb , pub rm : * mut RefManager , pub zign_spaces : RSpaces , pub zign_path : * mut :: std :: os :: raw :: c_char , pub cb_printf : PrintfCallback , pub print : * mut RPrint , pub sdb : * mut Sdb , pub sdb_pins : * mut Sdb , pub addr_hints : * mut [u64 ; 11usize] , pub arch_hints : RBTree , pub bits_hints : RBTree , pub hint_cbs : RHintCb , pub meta : RIntervalTree , pub meta_spaces : RSpaces , pub sdb_cc : * mut Sdb , pub sdb_classes : * mut Sdb , pub sdb_classes_attrs : * mut Sdb , pub cb : RAnalCallbacks , pub opt : RAnalOptions , pub reflines : * mut RList , pub reflines2 : * mut RList , pub columnSort : RListComparator , pub stackptr : :: std :: os :: raw :: c_int , pub log : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut r_anal_t , msg : * const :: std :: os :: raw :: c_char) -> bool > , pub read_at : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut r_anal_t , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub verbose : bool , pub flag_get : RFlagGetAtAddr , pub ev : * mut REvent , pub imports : * mut RList , pub visited : * mut SetU , pub constpool : RStrConstPool , pub leaddrs : * mut RList , pub pincmd : * mut :: std :: os :: raw :: c_char , pub btstore : RAnalBacktraces , pub lock : * mut RThreadLock , pub eligible : * mut RList , pub cmpval : u64 , pub lea_jmptbl_ip : u64 , pub cs_obits : :: std :: os :: raw :: c_int , pub cs_omode : :: std :: os :: raw :: c_int , pub cs_handle : usize , pub thread : :: std :: os :: raw :: c_int , pub threads : * mut RList , pub tracetagcolors : [RColor ; 64usize] , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_anal_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_t > () , 2000usize , concat ! ("Size of: " , stringify ! (r_anal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lineswidth) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lineswidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cxxabi) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cxxabi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_tree) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (bb_tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcns) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (fcns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_addr_fun) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ht_addr_fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_name_fun) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ht_name_fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_disasm_reg) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (last_disasm_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_disasm_reg_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (last_disasm_reg_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_ops) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_thbb) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_thbb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_thfcn) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_thfcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_class_set) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_class_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_class_get) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_class_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_fcn_set) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_fcn_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binb) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (binb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxreflines) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (maxreflines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil_goto_limit) as usize - ptr as usize } , 804usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (esil_goto_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_types) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_fmts) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_fmts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_zigns) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_zigns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (rm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zign_spaces) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (zign_spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zign_path) as usize - ptr as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (zign_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print) as usize - ptr as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (print))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_pins) as usize - ptr as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_pins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_hints) as usize - ptr as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (addr_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch_hints) as usize - ptr as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (arch_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits_hints) as usize - ptr as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (bits_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint_cbs) as usize - ptr as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (hint_cbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta_spaces) as usize - ptr as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (meta_spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_cc) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_classes) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_classes_attrs) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_classes_attrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 1104usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflines) as usize - ptr as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reflines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflines2) as usize - ptr as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reflines2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columnSort) as usize - ptr as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (columnSort))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_at) as usize - ptr as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag_get) as usize - ptr as usize } , 1288usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flag_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 1296usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 1304usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visited) as usize - ptr as usize } , 1312usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (visited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 1320usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . leaddrs) as usize - ptr as usize } , 1328usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (leaddrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pincmd) as usize - ptr as usize } , 1336usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (pincmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btstore) as usize - ptr as usize } , 1344usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (btstore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 1352usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eligible) as usize - ptr as usize } , 1360usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (eligible))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpval) as usize - ptr as usize } , 1368usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cmpval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lea_jmptbl_ip) as usize - ptr as usize } , 1376usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lea_jmptbl_ip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_obits) as usize - ptr as usize } , 1384usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_obits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_omode) as usize - ptr as usize } , 1388usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_omode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_handle) as usize - ptr as usize } , 1392usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_handle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 1400usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 1408usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracetagcolors) as usize - ptr as usize } , 1416usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (tracetagcolors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 1992usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_anal_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnal = r_anal_t ; pub type RAnalLabelAt = :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , arg1 : u64) -> * const :: std :: os :: raw :: c_char > ; pub const RAnalVarKind_R_ANAL_VAR_KIND_REG : RAnalVarKind = 114 ; pub const RAnalVarKind_R_ANAL_VAR_KIND_BPV : RAnalVarKind = 98 ; pub const RAnalVarKind_R_ANAL_VAR_KIND_SPV : RAnalVarKind = 115 ; pub type RAnalVarKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_access_t { pub reg : * const :: std :: os :: raw :: c_char , pub offset : i64 , pub stackptr : i64 , pub type_ : u8 , } # [test] fn bindgen_test_layout_r_anal_var_access_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_access_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_access_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_var_access_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_access_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_access_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_var_access_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVarAccess = r_anal_var_access_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_constraint_t { pub cond : RAnalCondType , pub val : u64 , } # [test] fn bindgen_test_layout_r_anal_var_constraint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_constraint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_constraint_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_var_constraint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_constraint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_constraint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_constraint_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_constraint_t) , "::" , stringify ! (val))) ; } impl Default for r_anal_var_constraint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVarConstraint = r_anal_var_constraint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_t { pub fcn : * mut RAnalFunction , pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub kind : RAnalVarKind , pub isarg : bool , pub delta : :: std :: os :: raw :: c_int , pub regname : * mut :: std :: os :: raw :: c_char , pub accesses : RVector , pub comment : * mut :: std :: os :: raw :: c_char , pub constraints : RVector , pub argnum : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_var_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_anal_var_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isarg) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (isarg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regname) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (regname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accesses) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (accesses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constraints) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (constraints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argnum) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (argnum))) ; } impl Default for r_anal_var_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVar = r_anal_var_t ; extern "C" { pub fn r_anal_get_fcn_in (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_get_fcn_in_bounds (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_var_all_list (anal : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_function_get_var_fields (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_get_used_function_var (anal : * mut RAnal , addr : u64) -> * mut RAnalVar ; } pub type RAnalGetFcnIn = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction > ; pub type RAnalGetHint = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64) -> * mut RAnalHint > ; pub type RAnalMnemonics = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalEncode = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , s : * const :: std :: os :: raw :: c_char , data : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RAnalDecode = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int > ; pub type RAnalOpInit = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnalOp) > ; pub type RAnalOpFini = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnalOp) > ; pub type RAnalUse = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_bind_t { pub anal : * mut RAnal , pub get_fcn_in : RAnalGetFcnIn , pub get_hint : RAnalGetHint , pub mnemonics : RAnalMnemonics , pub encode : RAnalEncode , pub decode : RAnalDecode , pub opinit : RAnalOpInit , pub opfini : RAnalOpFini , pub use_ : RAnalUse , } # [test] fn bindgen_test_layout_r_anal_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_bind_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_anal_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_fcn_in) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (get_fcn_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_hint) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (get_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonics) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (mnemonics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (encode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (decode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opinit) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (opinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opfini) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (opfini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (use_))) ; } impl Default for r_anal_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBind = r_anal_bind_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_cond_t { pub type_ : :: std :: os :: raw :: c_int , pub left : * mut RArchValue , pub right : * mut RArchValue , } # [test] fn bindgen_test_layout_r_anal_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_cond_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . left) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (left))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . right) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (right))) ; } impl Default for r_anal_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalCond = r_anal_cond_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_bb_t { pub _rb : RBNode , pub _max_end : u64 , pub addr : u64 , pub size : u64 , pub jump : u64 , pub fail : u64 , pub traced : u64 , pub folded : bool , pub color : RColor , pub fingerprint : * mut u8 , pub diff : * mut RAnalDiff , pub cond : * mut RAnalCond , pub switch_op : * mut RAnalSwitchOp , pub op_bytes : * mut u8 , pub parent_reg_arena : * mut u8 , pub parent_reg_arena_size : :: std :: os :: raw :: c_int , pub op_pos : * mut u16 , pub op_pos_size : :: std :: os :: raw :: c_int , pub ninstr : :: std :: os :: raw :: c_int , pub stackptr : :: std :: os :: raw :: c_int , pub parent_stackptr : :: std :: os :: raw :: c_int , pub cmpval : u64 , pub cmpreg : * const :: std :: os :: raw :: c_char , pub bbhash : u32 , pub fcns : * mut RList , pub anal : * mut RAnal , pub esil : * mut :: std :: os :: raw :: c_char , pub ref_ : :: std :: os :: raw :: c_int , pub depth : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_bb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_bb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_bb_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_anal_bb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_bb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_bb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _rb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (_rb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _max_end) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (_max_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traced) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . folded) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (folded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fingerprint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (diff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_op) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (switch_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_bytes) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_reg_arena) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_reg_arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_reg_arena_size) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_reg_arena_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_pos) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_pos_size) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_pos_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninstr) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (ninstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_stackptr) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpval) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cmpval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpreg) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cmpreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbhash) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (bbhash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcns) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fcns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (depth))) ; } impl Default for r_anal_bb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBlock = r_anal_bb_t ; pub const RAnalRefType_R_ANAL_REF_TYPE_NULL : RAnalRefType = 0 ; pub const RAnalRefType_R_ANAL_REF_TYPE_ERROR : RAnalRefType = 1 ; pub const RAnalRefType_R_ANAL_REF_TYPE_CODE : RAnalRefType = 99 ; pub const RAnalRefType_R_ANAL_REF_TYPE_CALL : RAnalRefType = 67 ; pub const RAnalRefType_R_ANAL_REF_TYPE_JUMP : RAnalRefType = 106 ; pub const RAnalRefType_R_ANAL_REF_TYPE_DATA : RAnalRefType = 100 ; pub const RAnalRefType_R_ANAL_REF_TYPE_ICOD : RAnalRefType = 105 ; pub const RAnalRefType_R_ANAL_REF_TYPE_STRN : RAnalRefType = 115 ; pub const RAnalRefType_R_ANAL_REF_TYPE_MASK : RAnalRefType = 255 ; pub const RAnalRefType_R_ANAL_REF_TYPE_READ : RAnalRefType = 1024 ; pub const RAnalRefType_R_ANAL_REF_TYPE_WRITE : RAnalRefType = 512 ; pub const RAnalRefType_R_ANAL_REF_TYPE_EXEC : RAnalRefType = 256 ; pub const RAnalRefType_R_ANAL_REF_PERM_MASK : RAnalRefType = 65280 ; pub const RAnalRefType_R_ANAL_REF_DIRECTION_MASK : RAnalRefType = 65280 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_1 : RAnalRefType = 65536 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_2 : RAnalRefType = 131072 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_4 : RAnalRefType = 262144 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_8 : RAnalRefType = 524288 ; pub const RAnalRefType_R_ANAL_REF_SIZE_MASK : RAnalRefType = 16711680 ; pub type RAnalRefType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_ref_t { pub at : u64 , pub addr : u64 , pub type_ : RAnalRefType , } # [test] fn bindgen_test_layout_r_anal_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_ref_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . at) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_ref_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRef = r_anal_ref_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecAnalRef_t { _unused : [u8 ; 0] , } pub type RVecAnalRef = r_vec_RVecAnalRef_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_cycle_frame_t { pub naddr : u64 , pub hooks : * mut RList , pub prev : * mut r_anal_cycle_frame_t , } # [test] fn bindgen_test_layout_r_anal_cycle_frame_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_cycle_frame_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_cycle_frame_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_cycle_frame_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_cycle_frame_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_cycle_frame_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . naddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (naddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hooks) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (hooks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (prev))) ; } impl Default for r_anal_cycle_frame_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalCycleFrame = r_anal_cycle_frame_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_cfg_t { pub start : * mut RGraphNode , pub end : * mut RGraphNode , pub g : * mut RGraph , } # [test] fn bindgen_test_layout_r_anal_esil_cfg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_cfg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_cfg_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_esil_cfg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_cfg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_cfg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (g))) ; } impl Default for r_anal_esil_cfg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilCFG = r_anal_esil_cfg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_dfg_t { pub idx : u32 , pub fd : :: std :: os :: raw :: c_int , pub iob : RIOBind , pub reg : * mut RReg , pub regs : * mut Sdb , pub vars : * mut RRBTree , pub todo : * mut RQueue , pub insert : * mut :: std :: os :: raw :: c_void , pub flow : * mut RGraph , pub cur : * mut RGraphNode , pub old : * mut RGraphNode , pub esil : * mut REsil , pub use_map_info : bool , pub use_maps : bool , pub malloc_failed : bool , } # [test] fn bindgen_test_layout_r_anal_esil_dfg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_dfg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_dfg_t > () , 384usize , concat ! ("Size of: " , stringify ! (r_anal_esil_dfg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_dfg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_dfg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . todo) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . insert) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (insert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_map_info) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (use_map_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_maps) as usize - ptr as usize } , 377usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (use_maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . malloc_failed) as usize - ptr as usize } , 378usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (malloc_failed))) ; } impl Default for r_anal_esil_dfg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilDFG = r_anal_esil_dfg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_dfg_node_t { pub idx : u32 , pub content : * mut RStrBuf , pub type_ : u32 , } # [test] fn bindgen_test_layout_r_anal_esil_dfg_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_dfg_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_dfg_node_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_esil_dfg_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_dfg_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_dfg_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (content))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_esil_dfg_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilDFGNode = r_anal_esil_dfg_node_t ; pub type RAnalCmdCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , input : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RAnalOpFlow { pub jmptbl_found : bool , } # [test] fn bindgen_test_layout_RAnalOpFlow () { const UNINIT : :: std :: mem :: MaybeUninit < RAnalOpFlow > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RAnalOpFlow > () , 1usize , concat ! ("Size of: " , stringify ! (RAnalOpFlow))) ; assert_eq ! (:: std :: mem :: align_of :: < RAnalOpFlow > () , 1usize , concat ! ("Alignment of " , stringify ! (RAnalOpFlow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmptbl_found) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RAnalOpFlow) , "::" , stringify ! (jmptbl_found))) ; } pub type RAnalOpCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int > ; pub type RAnalOpFlowCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , op : * mut RAnalOp) -> RAnalOpFlow > ; pub type RAnalPluginEligible = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > ; pub type RAnalFPBBCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , bb : * mut RAnalBlock) -> :: std :: os :: raw :: c_int > ; pub type RAnalFPFcnCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffBBCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn2 : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffFcnCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , fcns : * mut RList , fcns2 : * mut RList) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffEvalCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal) -> :: std :: os :: raw :: c_int > ; pub type RAnalTypesParser = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalTypesParserFile = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char , dir : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalTypesParserText = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_plugin_t { pub meta : RPluginMeta , pub depends : * const :: std :: os :: raw :: c_char , pub init : :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > , pub eligible : RAnalPluginEligible , pub op : RAnalOpCallback , pub cmd : RAnalCmdCallback , pub opflow : RAnalOpFlowCallback , pub tparse_text : RAnalTypesParserText , pub tparse_file : RAnalTypesParserFile , pub tdump : RAnalTypesParser , # [doc = " XXX unused but referenced, maybe worth checking in case we want them for anal"] pub fingerprint_bb : RAnalFPBBCallback , pub fingerprint_fcn : RAnalFPFcnCallback , pub diff_bb : RAnalDiffBBCallback , pub diff_fcn : RAnalDiffFcnCallback , pub diff_eval : RAnalDiffEvalCallback , } # [test] fn bindgen_test_layout_r_anal_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_plugin_t > () , 184usize , concat ! ("Size of: " , stringify ! (r_anal_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depends) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (depends))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eligible) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (eligible))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opflow) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (opflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparse_text) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tparse_text))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparse_file) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tparse_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tdump) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tdump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_bb) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fingerprint_bb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_fcn) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fingerprint_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_bb) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_bb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_fcn) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_eval) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_eval))) ; } impl Default for r_anal_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalPlugin = r_anal_plugin_t ; extern "C" { pub fn r_anal_compare (arg1 : RAnalFunction , arg2 : RAnalFunction) -> * mut :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_value_to_ut64 (anal : * mut RAnal , val : * mut RArchValue) -> u64 ; } extern "C" { pub fn r_anal_value_set_ut64 (anal : * mut RAnal , val : * mut RArchValue , num : u64) -> bool ; } extern "C" { pub fn r_listrange_new () -> * mut RListRange ; } extern "C" { pub fn r_listrange_free (s : * mut RListRange) ; } extern "C" { pub fn r_listrange_add (s : * mut RListRange , f : * mut RAnalFunction) ; } extern "C" { pub fn r_listrange_del (s : * mut RListRange , f : * mut RAnalFunction) ; } extern "C" { pub fn r_listrange_resize (s : * mut RListRange , f : * mut RAnalFunction , newsize : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_listrange_find_in_range (s : * mut RListRange , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_listrange_find_root (s : * mut RListRange , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_type_new () -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_add (l : * mut RAnal , t : * mut RAnalType) ; } extern "C" { pub fn r_anal_type_find (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_list (a : * mut RAnal , category : :: std :: os :: raw :: c_short , enabled : :: std :: os :: raw :: c_short) ; } extern "C" { pub fn r_anal_datatype_tostring (t : RAnalDataType) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_str_to_type (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_free (t : * mut RAnalType) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_loadfile (a : * mut RAnal , path : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_cmd (a : * mut RAnal , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } pub type RAnalBlockCb = :: std :: option :: Option < unsafe extern "C" fn (block : * mut RAnalBlock , user : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RAnalAddrCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_block_ref (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_unref (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_reset (a : * mut RAnal) ; } extern "C" { pub fn r_anal_create_block (anal : * mut RAnal , addr : u64 , size : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_split (bb : * mut RAnalBlock , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_merge (a : * mut RAnalBlock , b : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_delete_block (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_delete_block_at (anal : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_block_set_size (block : * mut RAnalBlock , size : u64) ; } extern "C" { pub fn r_anal_block_relocate (block : * mut RAnalBlock , addr : u64 , size : u64) -> bool ; } extern "C" { pub fn r_anal_block_ninstr (block : * mut RAnalBlock , pos : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_get_block_at (anal : * mut RAnal , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_blocks_foreach_in (anal : * mut RAnal , addr : u64 , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_get_blocks_in (anal : * mut RAnal , addr : u64) -> * mut RList ; } extern "C" { pub fn r_anal_blocks_foreach_intersect (anal : * mut RAnal , addr : u64 , size : u64 , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_get_blocks_intersect (anal : * mut RAnal , addr : u64 , size : u64) -> * mut RList ; } extern "C" { pub fn r_anal_block_successor_addrs_foreach (block : * mut RAnalBlock , cb : RAnalAddrCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse (block : * mut RAnalBlock , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_followthrough (block : * mut RAnalBlock , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_depth_first (block : * mut RAnalBlock , cb : RAnalBlockCb , on_exit : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_list (block : * mut RAnalBlock) -> * mut RList ; } extern "C" { pub fn r_anal_block_shortest_path (block : * mut RAnalBlock , dst : u64) -> * mut RList ; } extern "C" { pub fn r_anal_block_add_switch_case (block : * mut RAnalBlock , switch_addr : u64 , case_value : u64 , case_addr : u64) ; } extern "C" { pub fn r_anal_block_chop_noreturn (block : * mut RAnalBlock , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_automerge (blocks : * mut RList) ; } extern "C" { pub fn r_anal_block_op_starts_at (block : * mut RAnalBlock , addr : u64) -> bool ; } extern "C" { pub fn r_anal_block_update_hash (block : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_was_modified (block : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_function_new (anal : * mut RAnal) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_free (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_add_function (anal : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_create_function (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64 , type_ : :: std :: os :: raw :: c_int , diff : * mut RAnalDiff) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_get_functions_in (anal : * mut RAnal , addr : u64) -> * mut RList ; } extern "C" { pub fn r_anal_get_function_at (anal : * mut RAnal , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_delete (anal : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_relocate (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_rename (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_function_add_block (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_function_remove_block (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_function_linear_size (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_min_addr (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_max_addr (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_size_from_entry (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_realsize (fcn : * const RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_contains (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_was_modified (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_get_graph (fcn : * mut RAnalFunction , node_ptr : * mut * mut RGraphNode , addr : u64) -> * mut RGraph ; } extern "C" { pub fn r_anal_new () -> * mut RAnal ; } extern "C" { pub fn r_anal_purge (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_free (r : * mut RAnal) ; } extern "C" { pub fn r_anal_set_user_ptr (anal : * mut RAnal , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_plugin_free (p : * mut RAnalPlugin) ; } extern "C" { pub fn r_anal_plugin_add (anal : * mut RAnal , plugin : * mut RAnalPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_plugin_remove (anal : * mut RAnal , plugin : * mut RAnalPlugin) -> bool ; } extern "C" { pub fn r_anal_archinfo (anal : * mut RAnal , query : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_is_aligned (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_anal_use (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_set_reg_profile (anal : * mut RAnal , rp : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_get_reg_profile (anal : * mut RAnal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_get_bbaddr (anal : * mut RAnal , addr : u64) -> u64 ; } extern "C" { pub fn r_anal_set_bits (anal : * mut RAnal , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_set_os (anal : * mut RAnal , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_mask (anal : * mut RAnal , size : :: std :: os :: raw :: c_int , data : * const u8 , at : u64) -> * mut u8 ; } extern "C" { pub fn r_anal_trace_bb (anal : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_functiontype_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_coverage (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , depth : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_bind (b : * mut RAnal , bnd : * mut RAnalBind) ; } extern "C" { pub fn r_anal_set_triplet (anal : * mut RAnal , os : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_add_import (anal : * mut RAnal , imp : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_remove_import (anal : * mut RAnal , imp : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_purge_imports (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_bb_from_offset (anal : * mut RAnal , off : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_bb_set_offset (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int , v : u16) -> bool ; } extern "C" { pub fn r_anal_bb_offset_inst (bb : * const RAnalBlock , i : :: std :: os :: raw :: c_int) -> u16 ; } extern "C" { pub fn r_anal_bb_opaddr_i (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_bb_opaddr_at (bb : * mut RAnalBlock , addr : u64) -> u64 ; } extern "C" { pub fn r_anal_bb_size_i (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_stackop_tostring (s : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_new () -> * mut RAnalOp ; } extern "C" { pub fn r_anal_op_fini (op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_mnemonics (anal : * mut RAnal , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_reg_delta (anal : * mut RAnal , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_is_eob (op : * mut RAnalOp) -> bool ; } extern "C" { pub fn r_anal_op (anal : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_opasm (anal : * mut RAnal , pc : u64 , s : * const :: std :: os :: raw :: c_char , outbuf : * mut u8 , outlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_tostring (anal : * mut RAnal , op : * mut RAnalOp) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_init (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin_fini (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin (a : * mut RAnal , addr : u64 , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_pin_call (a : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_list (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin_unset (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_function_cost (fcn : * mut RAnalFunction) -> u32 ; } extern "C" { pub fn r_anal_function_count_edges (fcn : * const RAnalFunction , ebbs : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_get_function_byname (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , reftype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_del (anal : * mut RAnal , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_add_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , size : u64 , jump : u64 , fail : u64 , diff : * mut RAnalDiff) -> bool ; } extern "C" { pub fn r_anal_check_fcn (anal : * mut RAnal , buf : * mut u8 , bufsz : u16 , addr : u64 , low : u64 , high : u64) -> bool ; } extern "C" { pub fn r_anal_function_check_bp_use (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_update_analysis_range (anal : * mut RAnal , addr : u64 , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_function_update_analysis (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_var_del_byindex (a : * mut RAnal , fna : u64 , kind : :: std :: os :: raw :: c_char , scope : :: std :: os :: raw :: c_int , idx : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count (a : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_all (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_args (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_locals (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_display (anal : * mut RAnal , var : * mut RAnalVar) -> bool ; } extern "C" { pub fn r_anal_function_complexity (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_loops (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_trim_jmprefs (anal : * mut RAnal , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_del_jmprefs (anal : * mut RAnal , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_next (anal : * mut RAnal , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_get_signature (function : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_del_signature (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_str_to_fcn (a : * mut RAnal , f : * mut RAnalFunction , _str : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_count (a : * mut RAnal , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_bbget_in (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_function_bbget_at (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_function_bbadd (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_function_resize (fcn : * mut RAnalFunction , newsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_purity (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_instrcount (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_islineal (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_pin_get (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_at (a : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_fcn_prefix_at (anal : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_set (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_ref_list_new () -> * mut RList ; } extern "C" { pub fn r_anal_ref_type_tostring (t : RAnalRefType) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_size (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_ref_typemask (x : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_xrefs_type (ch : :: std :: os :: raw :: c_char) -> RAnalRefType ; } extern "C" { pub fn r_anal_ref_perm_tostring (ref_ : * mut RAnalRef) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_perm_tochar (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_permchar_tostring (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_xrefs_init (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_xrefs_free (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_xrefs_type_from_string (s : * const :: std :: os :: raw :: c_char) -> RAnalRefType ; } extern "C" { pub fn r_anal_xrefs_get (anal : * mut RAnal , to : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_refs_get (anal : * mut RAnal , from : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_has_xrefs_at (anal : * mut RAnal , at : u64) -> bool ; } extern "C" { pub fn r_anal_xrefs_get_from (anal : * mut RAnal , to : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_list (anal : * mut RAnal , rad : :: std :: os :: raw :: c_int , arg : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_anal_xrefs_count (anal : * mut RAnal) -> u64 ; } extern "C" { pub fn r_anal_xrefs_count_at (anal : * mut RAnal , to : u64) -> u64 ; } extern "C" { pub fn r_anal_function_get_refs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_function_get_all_xrefs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_function_get_xrefs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_set (anal : * mut RAnal , from : u64 , to : u64 , type_ : RAnalRefType) -> bool ; } extern "C" { pub fn r_anal_xref_del (anal : * mut RAnal , from : u64 , to : u64) -> bool ; } extern "C" { pub fn r_anal_get_fcns (anal : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_anal_remove_parsed_type (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_save_parsed_type (anal : * mut RAnal , parsed : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_function_autoname_var (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_char , pfx : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_set_var (fcn : * mut RAnalFunction , delta : :: std :: os :: raw :: c_int , kind : :: std :: os :: raw :: c_char , type_ : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , isarg : bool , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_function_set_var_prot (fcn : * mut RAnalFunction , l : * mut RList) -> bool ; } extern "C" { pub fn r_anal_function_get_var (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_char , delta : :: std :: os :: raw :: c_int) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_var_deserialize (ser : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_anal_var_prot_serialize (l : * mut RList , spaces : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_var_get_prots (fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_function_get_var_byname (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_function_delete_vars_by_kind (fcn : * mut RAnalFunction , kind : RAnalVarKind) ; } extern "C" { pub fn r_anal_function_delete_all_vars (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_delete_unused_vars (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_delete_var (fcn : * mut RAnalFunction , var : * mut RAnalVar) ; } extern "C" { pub fn r_anal_function_rebase_vars (a : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_get_var_stackptr_at (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> i64 ; } extern "C" { pub fn r_anal_function_get_var_reg_at (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_get_vars_used_at (fcn : * mut RAnalFunction , op_addr : u64) -> * mut RPVector ; } extern "C" { pub fn r_anal_var_rename (anal : * mut RAnal , var : * mut RAnalVar , new_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_var_set_type (anal : * mut RAnal , var : * mut RAnalVar , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_var_delete (anal : * mut RAnal , var : * mut RAnalVar) -> bool ; } extern "C" { pub fn r_anal_var_addr (var : * mut RAnalVar) -> u64 ; } extern "C" { pub fn r_anal_var_set_access (anal : * mut RAnal , var : * mut RAnalVar , reg : * const :: std :: os :: raw :: c_char , access_addr : u64 , access_type : :: std :: os :: raw :: c_int , stackptr : i64) -> bool ; } extern "C" { pub fn r_anal_var_remove_access_at (var : * mut RAnalVar , address : u64) ; } extern "C" { pub fn r_anal_var_clear_accesses (var : * mut RAnalVar) ; } extern "C" { pub fn r_anal_var_add_constraint (var : * mut RAnalVar , constraint : * mut RAnalVarConstraint) ; } extern "C" { pub fn r_anal_var_get_constraints_readable (var : * mut RAnalVar) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_var_get_access_at (var : * mut RAnalVar , addr : u64) -> * mut RAnalVarAccess ; } extern "C" { pub fn r_anal_var_get_argnum (var : * mut RAnalVar) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_extract_vars (anal : * mut RAnal , fcn : * mut RAnalFunction , op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_extract_rarg (anal : * mut RAnal , op : * mut RAnalOp , fcn : * mut RAnalFunction , reg_set : * mut :: std :: os :: raw :: c_int , count : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_var_get_dst_var (var : * mut RAnalVar) -> * mut RAnalVar ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_function_vars_cache { pub bvars : * mut RList , pub rvars : * mut RList , pub svars : * mut RList , } # [test] fn bindgen_test_layout_r_anal_function_vars_cache () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_vars_cache > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_vars_cache > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_function_vars_cache))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_vars_cache > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_vars_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bvars) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (bvars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rvars) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (rvars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . svars) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (svars))) ; } impl Default for r_anal_function_vars_cache { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalFcnVarsCache = r_anal_function_vars_cache ; extern "C" { pub fn r_anal_function_vars_cache_init (anal : * mut RAnal , cache : * mut RAnalFcnVarsCache , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_vars_cache_fini (cache : * mut RAnalFcnVarsCache) ; } extern "C" { pub fn r_anal_function_format_sig (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn_name : * mut :: std :: os :: raw :: c_char , reuse_cache : * mut RAnalFcnVarsCache , fcn_name_pre : * const :: std :: os :: raw :: c_char , fcn_name_post : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_diff_new () -> * mut RAnalDiff ; } extern "C" { pub fn r_anal_diff_setup (anal : * mut RAnal , doops : bool , thbb : f64 , thfcn : f64) ; } extern "C" { pub fn r_anal_diff_setup_i (anal : * mut RAnal , doops : bool , thbb : :: std :: os :: raw :: c_int , thfcn : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_diff_free (diff : * mut RAnalDiff) ; } extern "C" { pub fn r_anal_diff_fingerprint_bb (anal : * mut RAnal , bb : * mut RAnalBlock) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_diff_fingerprint_fcn (anal : * mut RAnal , fcn : * mut RAnalFunction) -> usize ; } extern "C" { pub fn r_anal_diff_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn2 : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_diff_fcn (anal : * mut RAnal , fcns : * mut RList , fcns2 : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cond_new () -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_new_from_op (op : * mut RAnalOp) -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_fini (c : * mut RAnalCond) ; } extern "C" { pub fn r_anal_cond_free (c : * mut RAnalCond) ; } extern "C" { pub fn r_anal_cond_tostring (cond : * mut RAnalCond) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cond_eval (anal : * mut RAnal , cond : * mut RAnalCond) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cond_new_from_string (str_ : * const :: std :: os :: raw :: c_char) -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_type_tostring (cc : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cond_typeexpr_tostring (cc : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_jmptbl (anal : * mut RAnal , fcn : * mut RAnalFunction , block : * mut RAnalBlock , jmpaddr : u64 , table : u64 , tablesize : u64 , default_addr : u64) -> bool ; } extern "C" { pub fn r_anal_jmptbl_list (anal : * mut RAnal , fcn : * mut RAnalFunction , bb : * mut RAnalBlock , saddr : u64 , jaddr : u64 , cases : * mut RList , loadsz : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_jmptbl_walk (analysis : * mut RAnal , fcn : * mut RAnalFunction , block : * mut RAnalBlock , depth : :: std :: os :: raw :: c_int , ip : u64 , start_casenum_shift : i64 , jmptbl_loc : u64 , jmptbl_off : u64 , sz : u64 , jmptbl_size : u64 , default_case : u64 , ret0 : bool) -> bool ; } extern "C" { pub fn r_anal_reflines_get (anal : * mut RAnal , addr : u64 , buf : * const u8 , len : u64 , nlines : :: std :: os :: raw :: c_int , linesout : :: std :: os :: raw :: c_int , linescall : :: std :: os :: raw :: c_int , splitmode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_reflines_middle (anal : * mut RAnal , list : * mut RList , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_reflines_str (core : * mut :: std :: os :: raw :: c_void , addr : u64 , opts : :: std :: os :: raw :: c_int) -> * mut RAnalRefStr ; } extern "C" { pub fn r_anal_reflines_str_free (refstr : * mut RAnalRefStr) ; } extern "C" { pub fn r_anal_var_list_show (anal : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , pj : * mut PJ) ; } extern "C" { pub fn r_anal_var_list (anal : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_cc_exist (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_cc_reset (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_cc_del (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_set (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_cc_get (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_once (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_cc_get_json (anal : * mut RAnal , pj : * mut PJ , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_arg (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , lastn : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_self (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_set_self (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , self_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_error (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_set_error (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , error : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_max_arg (anal : * mut RAnal , cc : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cc_ret (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_default (anal : * mut RAnal) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_set_cc_default (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_syscc_default (anal : * mut RAnal) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_set_syscc_default (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_func (anal : * mut RAnal , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_noreturn_at (anal : * mut RAnal , addr : u64) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_data_t { pub addr : u64 , pub type_ : :: std :: os :: raw :: c_int , pub ptr : u64 , pub str_ : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub sbuf : [u8 ; 8usize] , } # [test] fn bindgen_test_layout_r_anal_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_data_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_anal_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sbuf) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (sbuf))) ; } impl Default for r_anal_data_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalData = r_anal_data_t ; extern "C" { pub fn r_anal_data (anal : * mut RAnal , addr : u64 , buf : * const u8 , size : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_kind (anal : * mut RAnal , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_data_type (a : * mut RAnal , da : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_data_new_string (addr : u64 , p : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , wide : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_new (addr : u64 , type_ : :: std :: os :: raw :: c_int , n : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_free (d : * mut RAnalData) ; } extern "C" { pub fn r_anal_data_tostring (d : * mut RAnalData , pal : * mut RConsPrintablePalette) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_set (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , size : u64 , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_set_with_subtype (m : * mut RAnal , type_ : RAnalMetaType , subtype : :: std :: os :: raw :: c_int , addr : u64 , size : u64 , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_del (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , size : u64) ; } extern "C" { pub fn r_meta_set_string (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_get_string (a : * mut RAnal , type_ : RAnalMetaType , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_set_data_at (a : * mut RAnal , addr : u64 , wordsz : u64) ; } extern "C" { pub fn r_meta_get_at (a : * mut RAnal , addr : u64 , type_ : RAnalMetaType , size : * mut u64) -> * mut RAnalMetaItem ; } extern "C" { pub fn r_meta_get_in (a : * mut RAnal , addr : u64 , type_ : RAnalMetaType) -> * mut RIntervalNode ; } extern "C" { pub fn r_meta_get_all_at (a : * mut RAnal , at : u64) -> * mut RPVector ; } extern "C" { pub fn r_meta_get_all_in (a : * mut RAnal , at : u64 , type_ : RAnalMetaType) -> * mut RPVector ; } extern "C" { pub fn r_meta_get_all_intersect (a : * mut RAnal , start : u64 , size : u64 , type_ : RAnalMetaType) -> * mut RPVector ; } extern "C" { pub fn r_meta_space_unset_for (a : * mut RAnal , space : * const RSpace) ; } extern "C" { pub fn r_meta_space_count_for (a : * mut RAnal , space : * const RSpace) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_meta_rebase (anal : * mut RAnal , diff : u64) ; } extern "C" { pub fn r_meta_get_size (a : * mut RAnal , type_ : RAnalMetaType) -> u64 ; } extern "C" { pub fn r_meta_type_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_print (a : * mut RAnal , d : * mut RAnalMetaItem , start : u64 , size : u64 , rad : :: std :: os :: raw :: c_int , pj : * mut PJ , t : * mut RTable , show_full : bool) ; } extern "C" { pub fn r_meta_print_list_all (a : * mut RAnal , type_ : :: std :: os :: raw :: c_int , rad : :: std :: os :: raw :: c_int , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_meta_print_list_at (a : * mut RAnal , addr : u64 , rad : :: std :: os :: raw :: c_int , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_meta_print_list_in_function (a : * mut RAnal , type_ : :: std :: os :: raw :: c_int , rad : :: std :: os :: raw :: c_int , addr : u64 , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_anal_hint_del (anal : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_clear (a : * mut RAnal) ; } extern "C" { pub fn r_anal_hint_free (h : * mut RAnalHint) ; } extern "C" { pub fn r_anal_hint_set_syntax (a : * mut RAnal , addr : u64 , syn : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_type (a : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_jump (a : * mut RAnal , addr : u64 , jump : u64) ; } extern "C" { pub fn r_anal_hint_set_fail (a : * mut RAnal , addr : u64 , fail : u64) ; } extern "C" { pub fn r_anal_hint_set_newbits (a : * mut RAnal , addr : u64 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_nword (a : * mut RAnal , addr : u64 , nword : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_offset (a : * mut RAnal , addr : u64 , typeoff : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_immbase (a : * mut RAnal , addr : u64 , base : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_size (a : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_set_opcode (a : * mut RAnal , addr : u64 , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_esil (a : * mut RAnal , addr : u64 , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_pointer (a : * mut RAnal , addr : u64 , ptr : u64) ; } extern "C" { pub fn r_anal_hint_set_ret (a : * mut RAnal , addr : u64 , val : u64) ; } extern "C" { pub fn r_anal_hint_set_high (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_set_stackframe (a : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_set_val (a : * mut RAnal , addr : u64 , v : u64) ; } extern "C" { pub fn r_anal_hint_set_arch (a : * mut RAnal , addr : u64 , arch : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_bits (a : * mut RAnal , addr : u64 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_unset_val (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_high (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_immbase (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_nword (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_size (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_type (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_esil (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_opcode (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_syntax (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_pointer (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_ret (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_offset (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_jump (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_fail (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_newbits (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_stackframe (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_arch (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_bits (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_addr_hints_at (anal : * mut RAnal , addr : u64) -> * const RVector ; } pub type RAnalAddrHintRecordsCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , records : * const RVector , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_addr_hints_foreach (anal : * mut RAnal , cb : RAnalAddrHintRecordsCb , user : * mut :: std :: os :: raw :: c_void) ; } pub type RAnalArchHintCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , arch : * const :: std :: os :: raw :: c_char , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_arch_hints_foreach (anal : * mut RAnal , cb : RAnalArchHintCb , user : * mut :: std :: os :: raw :: c_void) ; } pub type RAnalBitsHintCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , bits : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_bits_hints_foreach (anal : * mut RAnal , cb : RAnalBitsHintCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_hint_arch_at (anal : * mut RAnal , addr : u64 , hint_addr : * mut u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_hint_bits_at (anal : * mut RAnal , addr : u64 , hint_addr : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_hint_get (anal : * mut RAnal , addr : u64) -> * mut RAnalHint ; } extern "C" { pub fn r_anal_cycle_frame_new () -> * mut RAnalCycleFrame ; } extern "C" { pub fn r_anal_cycle_frame_free (cf : * mut RAnalCycleFrame) ; } extern "C" { pub fn r_anal_function_get_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_anal_function_get_label_at (fcn : * mut RAnalFunction , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_set_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_delete_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_function_delete_label_at (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_set_limits (anal : * mut RAnal , from : u64 , to : u64) ; } extern "C" { pub fn r_anal_unset_limits (anal : * mut RAnal) ; } extern "C" { pub fn r_esil_to_reil_setup (esil : * mut REsil , anal : * mut RAnal , romem : :: std :: os :: raw :: c_int , stats : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_trapstr (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_noreturn_list (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_noreturn_add (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_anal_noreturn_drop (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_noreturn_at_addr (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_sign_space_count_for (a : * mut RAnal , space : * const RSpace) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_space_unset_for (a : * mut RAnal , space : * const RSpace) ; } extern "C" { pub fn r_sign_space_rename_for (a : * mut RAnal , space : * const RSpace , oname : * const :: std :: os :: raw :: c_char , nname : * const :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RVTableContext { pub anal : * mut RAnal , pub abi : RAnalCPPABI , pub word_size : u8 , pub read_addr : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , buf : * mut u64) -> bool > , } # [test] fn bindgen_test_layout_RVTableContext () { const UNINIT : :: std :: mem :: MaybeUninit < RVTableContext > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RVTableContext > () , 24usize , concat ! ("Size of: " , stringify ! (RVTableContext))) ; assert_eq ! (:: std :: mem :: align_of :: < RVTableContext > () , 8usize , concat ! ("Alignment of " , stringify ! (RVTableContext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (word_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (read_addr))) ; } impl Default for RVTableContext { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vtable_info_t { pub saddr : u64 , pub methods : RVector , } # [test] fn bindgen_test_layout_vtable_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < vtable_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < vtable_info_t > () , 56usize , concat ! ("Size of: " , stringify ! (vtable_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < vtable_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (vtable_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . saddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vtable_info_t) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vtable_info_t) , "::" , stringify ! (methods))) ; } impl Default for vtable_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVTableInfo = vtable_info_t ; extern "C" { pub fn r_anal_vtable_info_free (vtable : * mut RVTableInfo) ; } extern "C" { pub fn r_anal_vtable_info_get_size (context : * mut RVTableContext , vtable : * mut RVTableInfo) -> u64 ; } extern "C" { pub fn r_anal_vtable_begin (anal : * mut RAnal , context : * mut RVTableContext) -> bool ; } extern "C" { pub fn r_anal_vtable_parse_at (context : * mut RVTableContext , addr : u64) -> * mut RVTableInfo ; } extern "C" { pub fn r_anal_vtable_search (context : * mut RVTableContext) -> * mut RList ; } extern "C" { pub fn r_anal_vtables_list (anal : * mut RAnal , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_msvc_demangle_class_name (context : * mut RVTableContext , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_msvc_print_complete_object_locator (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_type_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_class_hierarchy_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_base_class_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_at_vtable (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int , strict : bool) -> bool ; } extern "C" { pub fn r_anal_rtti_msvc_recover_all (vt_context : * mut RVTableContext , vtables : * mut RList) ; } extern "C" { pub fn r_anal_rtti_itanium_demangle_class_name (context : * mut RVTableContext , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_itanium_print_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_si_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_vmi_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_at_vtable (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_rtti_itanium_recover_all (vt_context : * mut RVTableContext , vtables : * mut RList) ; } extern "C" { pub fn r_anal_rtti_demangle_class_name (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_print_at_vtable (anal : * mut RAnal , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_print_all (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_recover_all (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_preludes (anal : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_anal_is_prelude (anal : * mut RAnal , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_method_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub vtable_offset : i64 , } # [test] fn bindgen_test_layout_r_anal_method_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_method_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_method_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_method_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_method_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_method_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtable_offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (vtable_offset))) ; } impl Default for r_anal_method_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalMethod = r_anal_method_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_class_t { pub id : * mut :: std :: os :: raw :: c_char , pub offset : u64 , pub class_name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_anal_base_class_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_class_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_class_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_base_class_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_class_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_class_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . class_name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (class_name))) ; } impl Default for r_anal_base_class_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseClass = r_anal_base_class_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_vtable_t { pub id : * mut :: std :: os :: raw :: c_char , pub offset : u64 , pub addr : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_anal_vtable_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_vtable_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_vtable_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_vtable_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_vtable_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_vtable_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (size))) ; } impl Default for r_anal_vtable_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVTable = r_anal_vtable_t ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_SUCCESS : RAnalClassErr = 0 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_CLASH : RAnalClassErr = 1 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_NONEXISTENT_ATTR : RAnalClassErr = 2 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_NONEXISTENT_CLASS : RAnalClassErr = 3 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_OTHER : RAnalClassErr = 4 ; pub type RAnalClassErr = :: std :: os :: raw :: c_uint ; extern "C" { pub fn r_anal_cparse (anal : * mut RAnal , code : * const :: std :: os :: raw :: c_char , error_msg : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cparse_file (anal : * mut RAnal , path : * const :: std :: os :: raw :: c_char , dir : * const :: std :: os :: raw :: c_char , error_msg : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_create (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_delete (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_exists (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_class_get_all (anal : * mut RAnal , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn r_anal_class_foreach (anal : * mut RAnal , cb : SdbForeachCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_class_rename (anal : * mut RAnal , old_name : * const :: std :: os :: raw :: c_char , new_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_fini (meth : * mut RAnalMethod) ; } extern "C" { pub fn r_anal_class_method_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth_name : * const :: std :: os :: raw :: c_char , meth : * mut RAnalMethod) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_method_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth : * mut RAnalMethod) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_rename (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , old_meth_name : * const :: std :: os :: raw :: c_char , new_meth_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_fini (base : * mut RAnalBaseClass) ; } extern "C" { pub fn r_anal_class_base_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base_id : * const :: std :: os :: raw :: c_char , base : * mut RAnalBaseClass) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_base_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base : * mut RAnalBaseClass) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base_id : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_fini (vtable : * mut RAnalVTable) ; } extern "C" { pub fn r_anal_class_vtable_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable_id : * const :: std :: os :: raw :: c_char , vtable : * mut RAnalVTable) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_vtable_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable : * mut RAnalVTable) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable_id : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_print (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , detailed : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_json (anal : * mut RAnal , j : * mut PJ , class_name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_list (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_bases (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_vtables (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_vtable_offset_functions (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_get_inheritance_graph (anal : * mut RAnal) -> * mut RGraph ; } extern "C" { pub fn r_anal_esil_cfg_new () -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_expr (cfg : * mut RAnalEsilCFG , anal : * mut RAnal , off : u64 , expr : * mut :: std :: os :: raw :: c_char) -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_op (cfg : * mut RAnalEsilCFG , anal : * mut RAnal , op : * mut RAnalOp) -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_merge_blocks (cfg : * mut RAnalEsilCFG) ; } extern "C" { pub fn r_anal_esil_cfg_free (cfg : * mut RAnalEsilCFG) ; } extern "C" { pub fn r_anal_get_gperf_cc (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_anal_get_gperf_types (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_anal_esil_dfg_node_new (edf : * mut RAnalEsilDFG , c : * const :: std :: os :: raw :: c_char) -> * mut RAnalEsilDFGNode ; } extern "C" { pub fn r_anal_esil_dfg_new (anal : * mut RAnal , use_map_info : bool , use_maps : bool) -> * mut RAnalEsilDFG ; } extern "C" { pub fn r_anal_esil_dfg_free (dfg : * mut RAnalEsilDFG) ; } extern "C" { pub fn r_anal_esil_dfg_expr (anal : * mut RAnal , dfg : * mut RAnalEsilDFG , expr : * const :: std :: os :: raw :: c_char , use_map_info : bool , use_maps : bool) -> * mut RAnalEsilDFG ; } extern "C" { pub fn r_anal_esil_dfg_fold_const (anal : * mut RAnal , dfg : * mut RAnalEsilDFG) ; } extern "C" { pub fn r_anal_esil_dfg_filter (dfg : * mut RAnalEsilDFG , reg : * const :: std :: os :: raw :: c_char) -> * mut RStrBuf ; } extern "C" { pub fn r_anal_esil_dfg_filter_expr (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , use_map_info : bool , use_maps : bool) -> * mut RStrBuf ; } extern "C" { pub fn r_anal_esil_dfg_reg_is_const (dfg : * mut RAnalEsilDFG , reg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_types_from_fcn (anal : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_get_base_type (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalBaseType ; } extern "C" { pub fn r_parse_pdb_types (anal : * const RAnal , pdb : * const RBinPdb) ; } extern "C" { pub fn r_anal_save_base_type (anal : * const RAnal , type_ : * const RAnalBaseType) ; } extern "C" { pub fn r_anal_base_type_free (type_ : * mut RAnalBaseType) ; } extern "C" { pub fn r_anal_base_type_new (kind : RAnalBaseTypeKind) -> * mut RAnalBaseType ; } extern "C" { pub fn r_anal_dwarf_process_info (anal : * const RAnal , ctx : * mut RAnalDwarfContext) ; } extern "C" { pub fn r_anal_dwarf_integrate_functions (anal : * mut RAnal , flags : * mut RFlag , dwarf_sdb : * mut Sdb) ; } extern "C" { pub fn r_anal_global_get (anal : * mut RAnal , addr : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_anal_global_add (anal : * mut RAnal , addr : u64 , type_name : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_del (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_anal_global_retype (anal : * mut RAnal , addr : u64 , new_type : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_rename (anal : * mut RAnal , addr : u64 , new_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_get_type (anal : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_is_dirty (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_tid_kill (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_tid_get (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> * mut RAnalThread ; } extern "C" { pub fn r_anal_tid_add (anal : * mut RAnal , map : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_tid_select (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> bool ; } pub type RVecBacktrace = r_vec_RVecBacktrace_t ; extern "C" { pub fn r_anal_backtrace_add (a : * mut RAnal , addr : u64 , bt : * mut RVecBacktrace) ; } extern "C" { pub fn r_anal_backtrace_del (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_backtrace_init (a : * mut RAnal) ; } extern "C" { pub fn r_anal_backtrace_fini (a : * mut RAnal) ; } extern "C" { pub fn r_anal_backtrace_list (a : * mut RAnal , addr : u64 , opt : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_code_t { pub len : :: std :: os :: raw :: c_int , pub bytes : * mut u8 , pub assembly : * mut :: std :: os :: raw :: c_char , pub equs : * mut [u64 ; 11usize] , pub code_offset : u64 , pub data_offset : u64 , pub code_align : :: std :: os :: raw :: c_int , pub cfloat_profile : RCFloatProfile , } # [test] fn bindgen_test_layout_r_asm_code_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_code_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_code_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_asm_code_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_code_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_code_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . assembly) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (assembly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . equs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (equs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code_offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (code_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_offset) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (data_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code_align) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (code_align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfloat_profile) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (cfloat_profile))) ; } impl Default for r_asm_code_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmCode = r_asm_code_t ; pub type RAnalVarList = :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_parse_t { pub user : * mut :: std :: os :: raw :: c_void , pub flagspace : * mut RSpace , pub notin_flagspace : * mut RSpace , pub pseudo : bool , pub subreg : bool , pub subrel : bool , pub subtail : bool , pub localvar_only : bool , pub subrel_addr : u64 , pub maxflagnamelen : :: std :: os :: raw :: c_int , pub minval : :: std :: os :: raw :: c_int , pub retleave_asm : * mut :: std :: os :: raw :: c_char , pub varlist : RAnalVarList , pub get_ptr_at : :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> i64 > , pub get_reg_at : :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> * const :: std :: os :: raw :: c_char > , pub get_op_ireg : :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * mut :: std :: os :: raw :: c_char > , pub flag_get : RFlagGetAtAddr , pub label_get : RAnalLabelAt , } # [test] fn bindgen_test_layout_r_parse_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_parse_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_parse_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_parse_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_parse_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_parse_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flagspace) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (flagspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notin_flagspace) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (notin_flagspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pseudo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (pseudo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subreg) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subrel) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subrel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subtail) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subtail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . localvar_only) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (localvar_only))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subrel_addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subrel_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxflagnamelen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (maxflagnamelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minval) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (minval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retleave_asm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (retleave_asm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varlist) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (varlist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_ptr_at) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_ptr_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_reg_at) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_reg_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_op_ireg) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_op_ireg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag_get) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (flag_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label_get) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (label_get))) ; } impl Default for r_parse_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RParse = r_parse_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_t { pub arch : * mut RArch , pub config : * mut RArchConfig , pub pc : u64 , pub user : * mut :: std :: os :: raw :: c_void , pub ecur : * mut RArchSession , pub dcur : * mut RArchSession , pub cur : * mut r_asm_plugin_session_t , pub sessions : * mut RList , pub analb : RAnalBind , pub pair : * mut Sdb , pub syscall : * mut RSyscall , pub num : * mut RNum , pub dataalign : :: std :: os :: raw :: c_int , pub codealign : :: std :: os :: raw :: c_int , pub flags : * mut [u64 ; 11usize] , pub pseudo : bool , pub use_spp : bool , pub parse : * mut RParse , } # [test] fn bindgen_test_layout_r_asm_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_t > () , 192usize , concat ! ("Size of: " , stringify ! (r_asm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ecur) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (ecur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dcur) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (dcur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sessions) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (sessions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . analb) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (analb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pair) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dataalign) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (dataalign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codealign) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (codealign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pseudo) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pseudo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_spp) as usize - ptr as usize } , 177usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (use_spp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (parse))) ; } impl Default for r_asm_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsm = r_asm_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_plugin_session_t { pub rasm : * mut r_asm_t , pub plugin : * mut r_asm_plugin_t , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_asm_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_asm_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (data))) ; } impl Default for r_asm_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmPluginSession = r_asm_plugin_session_t ; pub type RAsmParseInit = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession) > ; pub type RAsmParseFini = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession) > ; pub type RAsmParsePseudo = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParseFilter = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , addr : u64 , f : * mut RFlag , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParseSubvar = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , f : * mut RAnalFunction , addr : u64 , oplen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParsePatch = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , aop : * mut RAnalOp , newop : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_plugin_t { pub meta : RPluginMeta , pub init : RAsmParseInit , pub fini : RAsmParseFini , pub parse : RAsmParsePseudo , pub filter : RAsmParseFilter , pub subvar : RAsmParseSubvar , pub patch : RAsmParsePatch , } # [test] fn bindgen_test_layout_r_asm_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_plugin_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_asm_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subvar) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (subvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (patch))) ; } impl Default for r_asm_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmPlugin = r_asm_plugin_t ; extern "C" { pub fn r_parse_new () -> * mut RParse ; } extern "C" { pub fn r_parse_free (p : * mut RParse) ; } extern "C" { pub fn r_asm_parse_pseudo (a : * mut RAsm , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_filter (a : * mut RAsm , addr : u64 , f : * mut RFlag , hint : * mut RAnalHint , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_subvar (a : * mut RAsm , f : * mut RAnalFunction , addr : u64 , oplen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_immtrim (a : * mut RAsm , opstr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_immbase (a : * mut RAsm , opstr : * const :: std :: os :: raw :: c_char , base : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_patch (a : * mut RAsm , aop : * mut RAnalOp , newop : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_new () -> * mut RAsm ; } extern "C" { pub fn r_asm_free (a : * mut RAsm) ; } extern "C" { pub fn r_asm_modify (a : * mut RAsm , buf : * mut u8 , field : :: std :: os :: raw :: c_int , val : u64) -> bool ; } extern "C" { pub fn r_asm_mnemonics (a : * mut RAsm , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_mnemonics_byname (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_user_ptr (a : * mut RAsm , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_asm_use (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_use_assembler (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_use_parser (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_set_bits (a : * mut RAsm , bits : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_big_endian (a : * mut RAsm , big_endian : bool) -> bool ; } extern "C" { pub fn r_asm_set_syntax (a : * mut RAsm , syntax : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_asm_syntax_from_string (name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_pc (a : * mut RAsm , pc : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_disassemble (a : * mut RAsm , op : * mut RAnalOp , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_mdisassemble (a : * mut RAsm , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_mdisassemble_hexstr (a : * mut RAsm , p : * mut RParse , hexstr : * const :: std :: os :: raw :: c_char) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_assemble (a : * mut RAsm , buf : * const :: std :: os :: raw :: c_char) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_tostring (a : * mut RAsm , addr : u64 , b : * const u8 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_from_string (a : * mut RAsm , addr : u64 , b : * const :: std :: os :: raw :: c_char , l : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_asm_describe (a : * mut RAsm , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_list_directives () ; } extern "C" { pub fn r_asm_get_gperf (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_asm_cpus (a : * mut RAsm) -> * mut RList ; } extern "C" { pub fn r_asm_code_new () -> * mut RAsmCode ; } extern "C" { pub fn r_asm_code_free (acode : * mut RAsmCode) ; } extern "C" { pub fn r_asm_code_set_equ (code : * mut RAsmCode , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_asm_code_equ_replace (code : * mut RAsmCode , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_code_get_hex (acode : * mut RAsmCode) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_code_equ_get (code : * mut RAsmCode , key : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_plugin_add (a : * mut RAsm , plugin : * mut RAsmPlugin) -> bool ; } extern "C" { pub fn r_asm_plugin_remove (a : * mut RAsm , plugin : * mut RAsmPlugin) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_plugin_t { pub meta : RPluginMeta , pub type_ : :: std :: os :: raw :: c_int , pub build : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut :: std :: os :: raw :: c_void) -> * mut RBuffer > , } # [test] fn bindgen_test_layout_r_egg_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_plugin_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_egg_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . build) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (build))) ; } impl Default for r_egg_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REggPlugin = r_egg_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t { pub pushargs : :: std :: os :: raw :: c_int , pub nalias : :: std :: os :: raw :: c_int , pub nsyscalls : :: std :: os :: raw :: c_int , pub conditionstr : * mut :: std :: os :: raw :: c_char , pub syscallbody : * mut :: std :: os :: raw :: c_char , pub includefile : * mut :: std :: os :: raw :: c_char , pub setenviron : * mut :: std :: os :: raw :: c_char , pub mathline : * mut :: std :: os :: raw :: c_char , pub commentmode : :: std :: os :: raw :: c_int , pub varsize : :: std :: os :: raw :: c_int , pub varxs : :: std :: os :: raw :: c_int , pub lastctxdelta : :: std :: os :: raw :: c_int , pub nargs : :: std :: os :: raw :: c_int , pub docall : :: std :: os :: raw :: c_int , pub nfunctions : :: std :: os :: raw :: c_int , pub nbrackets : :: std :: os :: raw :: c_int , pub slurpin : :: std :: os :: raw :: c_int , pub slurp : :: std :: os :: raw :: c_int , pub line : :: std :: os :: raw :: c_int , pub elem : [:: std :: os :: raw :: c_char ; 1024usize] , pub attsyntax : :: std :: os :: raw :: c_int , pub elem_n : :: std :: os :: raw :: c_int , pub callname : * mut :: std :: os :: raw :: c_char , pub endframe : * mut :: std :: os :: raw :: c_char , pub ctxpush : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub file : * mut :: std :: os :: raw :: c_char , pub dstvar : * mut :: std :: os :: raw :: c_char , pub dstval : * mut :: std :: os :: raw :: c_char , pub includedir : * mut :: std :: os :: raw :: c_char , pub ifelse_table : [[* mut :: std :: os :: raw :: c_char ; 32usize] ; 32usize] , pub ndstval : :: std :: os :: raw :: c_int , pub skipline : :: std :: os :: raw :: c_int , pub quoteline : :: std :: os :: raw :: c_int , pub quotelinevar : :: std :: os :: raw :: c_int , pub stackframe : :: std :: os :: raw :: c_int , pub stackfixed : :: std :: os :: raw :: c_int , pub oc : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub inlinectr : :: std :: os :: raw :: c_int , pub inlines : [r_egg_lang_t__bindgen_ty_1 ; 256usize] , pub ninlines : :: std :: os :: raw :: c_int , pub syscalls : [r_egg_lang_t__bindgen_ty_2 ; 256usize] , pub aliases : [r_egg_lang_t__bindgen_ty_3 ; 256usize] , pub nested : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub nested_callname : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub nestedi : [:: std :: os :: raw :: c_int ; 32usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_1 { pub name : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_1) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_1) , "::" , stringify ! (body))) ; } impl Default for r_egg_lang_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_2 { pub name : * mut :: std :: os :: raw :: c_char , pub arg : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_2) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_2) , "::" , stringify ! (arg))) ; } impl Default for r_egg_lang_t__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_3 { pub name : * mut :: std :: os :: raw :: c_char , pub content : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_3) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_3) , "::" , stringify ! (content))) ; } impl Default for r_egg_lang_t__bindgen_ty_3 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_egg_lang_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t > () , 22608usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pushargs) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (pushargs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nalias) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nalias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nsyscalls) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nsyscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . conditionstr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (conditionstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscallbody) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (syscallbody))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . includefile) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (includefile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setenviron) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (setenviron))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mathline) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (mathline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commentmode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (commentmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varsize) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (varsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varxs) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (varxs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastctxdelta) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (lastctxdelta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nargs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nargs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . docall) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (docall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nfunctions) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nfunctions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbrackets) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nbrackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurpin) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (slurpin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurp) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (slurp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (elem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attsyntax) as usize - ptr as usize } , 1124usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (attsyntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem_n) as usize - ptr as usize } , 1128usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (elem_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callname) as usize - ptr as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (callname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endframe) as usize - ptr as usize } , 1144usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (endframe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctxpush) as usize - ptr as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ctxpush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 1408usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dstvar) as usize - ptr as usize } , 1416usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (dstvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dstval) as usize - ptr as usize } , 1424usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (dstval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . includedir) as usize - ptr as usize } , 1432usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (includedir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifelse_table) as usize - ptr as usize } , 1440usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ifelse_table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndstval) as usize - ptr as usize } , 9632usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ndstval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skipline) as usize - ptr as usize } , 9636usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (skipline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quoteline) as usize - ptr as usize } , 9640usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (quoteline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quotelinevar) as usize - ptr as usize } , 9644usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (quotelinevar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackframe) as usize - ptr as usize } , 9648usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (stackframe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackfixed) as usize - ptr as usize } , 9652usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (stackfixed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oc) as usize - ptr as usize } , 9656usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (oc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 9660usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inlinectr) as usize - ptr as usize } , 9664usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (inlinectr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inlines) as usize - ptr as usize } , 9672usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (inlines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninlines) as usize - ptr as usize } , 13768usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ninlines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscalls) as usize - ptr as usize } , 13776usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (syscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aliases) as usize - ptr as usize } , 17872usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (aliases))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nested) as usize - ptr as usize } , 21968usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nested))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nested_callname) as usize - ptr as usize } , 22224usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nested_callname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nestedi) as usize - ptr as usize } , 22480usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nestedi))) ; } impl Default for r_egg_lang_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REggLang = r_egg_lang_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_t { pub src : * mut RBuffer , pub buf : * mut RBuffer , pub bin : * mut RBuffer , pub list : * mut RList , pub rasm : * mut RAsm , pub syscall : * mut RSyscall , pub lang : REggLang , pub db : * mut Sdb , pub plugins : * mut RList , pub patches : * mut RList , pub remit : * mut r_egg_emit_t , pub arch : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub os : u32 , pub context : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_egg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_t > () , 22712usize , concat ! ("Size of: " , stringify ! (r_egg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . src) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (src))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 22656usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 22664usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patches) as usize - ptr as usize } , 22672usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (patches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . remit) as usize - ptr as usize } , 22680usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (remit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 22688usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 22692usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 22696usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 22700usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . context) as usize - ptr as usize } , 22704usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (context))) ; } impl Default for r_egg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REgg = r_egg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_emit_t { pub arch : * const :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , pub retvar : * const :: std :: os :: raw :: c_char , pub regs : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char > , pub init : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg) > , pub call : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , addr : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) > , pub jmp : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , addr : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) > , pub frame : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , sz : :: std :: os :: raw :: c_int) > , pub syscall : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , num : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char > , pub trap : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg) > , pub frame_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , sz : :: std :: os :: raw :: c_int , ctx : :: std :: os :: raw :: c_int) > , pub comment : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , fmt : * const :: std :: os :: raw :: c_char , ...) > , pub push_arg : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , xs : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int , str_ : * const :: std :: os :: raw :: c_char) > , pub set_string : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , dstvar : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , j : :: std :: os :: raw :: c_int) > , pub equ : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) > , pub get_result : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , ocn : * const :: std :: os :: raw :: c_char) > , pub restore_stack : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , size : :: std :: os :: raw :: c_int) > , pub syscall_args : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , nargs : :: std :: os :: raw :: c_int) > , pub get_var : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , type_ : :: std :: os :: raw :: c_int , out : * mut :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) > , pub get_ar : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) > , pub while_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , label : * const :: std :: os :: raw :: c_char) > , pub load : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , str_ : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) > , pub load_ptr : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , str_ : * const :: std :: os :: raw :: c_char) > , pub branch : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , b : * mut :: std :: os :: raw :: c_char , g : * mut :: std :: os :: raw :: c_char , e : * mut :: std :: os :: raw :: c_char , n : * mut :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int , dst : * const :: std :: os :: raw :: c_char) > , pub mathop : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , ch : :: std :: os :: raw :: c_int , sz : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int , eq : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char) > , pub get_while_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , ctxpush : * const :: std :: os :: raw :: c_char , label : * const :: std :: os :: raw :: c_char) > , } # [test] fn bindgen_test_layout_r_egg_emit_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_emit_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_emit_t > () , 208usize , concat ! ("Size of: " , stringify ! (r_egg_emit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_emit_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_emit_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retvar) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (retvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frame) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (frame))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frame_end) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (frame_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push_arg) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (push_arg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_string) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (set_string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . equ) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (equ))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_result) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_result))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . restore_stack) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (restore_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall_args) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (syscall_args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_var) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_ar) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_ar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . while_end) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (while_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load_ptr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (load_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branch) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (branch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mathop) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (mathop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_while_end) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_while_end))) ; } impl Default for r_egg_emit_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_egg_new () -> * mut REgg ; } extern "C" { pub fn r_egg_lang_init (egg : * mut REgg) ; } extern "C" { pub fn r_egg_lang_free (egg : * mut REgg) ; } extern "C" { pub fn r_egg_tostring (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_free (egg : * mut REgg) ; } extern "C" { pub fn r_egg_plugin_add (a : * mut REgg , plugin : * mut REggPlugin) -> bool ; } extern "C" { pub fn r_egg_plugin_remove (a : * mut REgg , plugin : * mut REggPlugin) -> bool ; } extern "C" { pub fn r_egg_reset (egg : * mut REgg) ; } extern "C" { pub fn r_egg_setup (egg : * mut REgg , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , endian : :: std :: os :: raw :: c_int , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_include (egg : * mut REgg , file : * const :: std :: os :: raw :: c_char , format : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_include_str (egg : * mut REgg , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_load (egg : * mut REgg , code : * const :: std :: os :: raw :: c_char , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_syscall (egg : * mut REgg , arg : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_egg_alloc (egg : * mut REgg , n : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_label (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_raw (egg : * mut REgg , b : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_encode (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_shellcode (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_option_set (egg : * mut REgg , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_option_get (egg : * mut REgg , k : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_if (egg : * mut REgg , reg : * const :: std :: os :: raw :: c_char , cmp : :: std :: os :: raw :: c_char , v : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_printf (egg : * mut REgg , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_egg_compile (egg : * mut REgg) -> bool ; } extern "C" { pub fn r_egg_padding (egg : * mut REgg , pad : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_assemble (egg : * mut REgg) -> bool ; } extern "C" { pub fn r_egg_assemble_asm (egg : * mut REgg , asm_list : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_pattern (egg : * mut REgg , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_get_bin (egg : * mut REgg) -> * mut RBuffer ; } extern "C" { pub fn r_egg_get_source (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_get_assembly (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_append (egg : * mut REgg , src : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_run (egg : * mut REgg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_run_rop (egg : * mut REgg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_patch (egg : * mut REgg , off : :: std :: os :: raw :: c_int , b : * const u8 , l : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_finalize (egg : * mut REgg) ; } extern "C" { pub fn r_egg_cfile_parser (file : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , os : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_mkvar (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , _str : * const :: std :: os :: raw :: c_char , delta : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_lang_parsechar (egg : * mut REgg , c : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_lang_include_path (egg : * mut REgg , path : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_lang_include_init (egg : * mut REgg) ; } pub type RCoreCmdStrCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreCmdfCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , s : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RCoreCallAtCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_t { pub user : * mut :: std :: os :: raw :: c_void , pub cons : * mut RCons , pub defs : * mut RList , pub langs : * mut RList , pub cmd_str : RCoreCmdStrCallback , pub cmdf : RCoreCmdfCallback , pub call_at : RCoreCallAtCallback , pub sessions : * mut RList , pub session : * mut r_lang_session_t , } # [test] fn bindgen_test_layout_r_lang_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_lang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (defs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . langs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (langs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_str) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cmd_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cmdf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call_at) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (call_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sessions) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (sessions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (session))) ; } impl Default for r_lang_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLang = r_lang_t ; pub type _RLangSession = r_lang_session_t ; pub type RLangPluginInit = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginSetup = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginFini = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginPrompt = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginRun = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , code : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RLangPluginRunFile = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , file : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RLangPluginSetArgv = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_plugin_t { pub meta : RPluginMeta , pub alias : * const :: std :: os :: raw :: c_char , pub example : * const :: std :: os :: raw :: c_char , pub help : * mut * const :: std :: os :: raw :: c_char , pub ext : * const :: std :: os :: raw :: c_char , pub init : RLangPluginInit , pub setup : RLangPluginSetup , pub fini : RLangPluginFini , pub prompt : RLangPluginPrompt , pub run : RLangPluginRun , pub run_file : RLangPluginRunFile , pub set_argv : RLangPluginSetArgv , } # [test] fn bindgen_test_layout_r_lang_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_plugin_t > () , 152usize , concat ! ("Size of: " , stringify ! (r_lang_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . example) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (example))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (ext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setup) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (setup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_file) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (run_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_argv) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (set_argv))) ; } impl Default for r_lang_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLangPlugin = r_lang_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_def_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub value : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_lang_def_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_def_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_def_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_lang_def_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_def_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_def_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (value))) ; } impl Default for r_lang_def_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLangDef = r_lang_def_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_session_t { pub lang : * mut RLang , pub plugin : * mut RLangPlugin , pub plugin_data : * mut :: std :: os :: raw :: c_void , pub user_data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_lang_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_session_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_lang_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (plugin_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (user_data))) ; } impl Default for r_lang_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_lang_new () -> * mut RLang ; } extern "C" { pub fn r_lang_free (lang : * mut RLang) ; } extern "C" { pub fn r_lang_setup (lang : * mut RLang) -> bool ; } extern "C" { pub fn r_lang_plugin_add (lang : * mut RLang , plugin : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_plugin_remove (lang : * mut RLang , plugin : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_use (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_use_plugin (lang : * mut RLang , h : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_run (lang : * mut RLang , code : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_lang_run_string (lang : * mut RLang , code : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_set_user_ptr (lang : * mut RLang , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_lang_set_argv (lang : * mut RLang , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_run_file (lang : * mut RLang , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_prompt (lang : * mut RLang) -> bool ; } extern "C" { pub fn r_lang_get_by_name (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) -> * mut RLangPlugin ; } extern "C" { pub fn r_lang_get_by_extension (lang : * mut RLang , ext : * const :: std :: os :: raw :: c_char) -> * mut RLangPlugin ; } extern "C" { pub fn r_lang_define (lang : * mut RLang , type_ : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , value : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lang_undef (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_lang_def_free (def : * mut RLangDef) ; } pub type RCore = r_core_t ; pub type RCmdCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; pub type RCmdNullCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_label_t { pub name : [:: std :: os :: raw :: c_char ; 80usize] , pub ptr : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cmd_macro_label_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_label_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_label_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_label_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_label_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_label_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_label_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_label_t) , "::" , stringify ! (ptr))) ; } impl Default for r_cmd_macro_label_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacroLabel = r_cmd_macro_label_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub code : * mut :: std :: os :: raw :: c_char , pub codelen : :: std :: os :: raw :: c_int , pub nargs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cmd_macro_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codelen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (codelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nargs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (nargs))) ; } impl Default for r_cmd_macro_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacroItem = r_cmd_macro_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_t { pub counter : :: std :: os :: raw :: c_int , pub brk_value : * mut u64 , pub _brk_value : u64 , pub brk : :: std :: os :: raw :: c_int , pub macro_level : :: std :: os :: raw :: c_int , pub cmd : RCoreCmd , pub user : * mut :: std :: os :: raw :: c_void , pub num : * mut RNum , pub labels_n : :: std :: os :: raw :: c_int , pub labels : [RCmdMacroLabel ; 20usize] , pub macros : * mut RList , } # [test] fn bindgen_test_layout_r_cmd_macro_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_t > () , 1832usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . counter) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . brk_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (brk_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _brk_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (_brk_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . brk) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (brk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macro_level) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (macro_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels_n) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (labels_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (labels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macros) as usize - ptr as usize } , 1824usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (macros))) ; } impl Default for r_cmd_macro_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacro = r_cmd_macro_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_item_t { pub cmd : [:: std :: os :: raw :: c_char ; 64usize] , pub callback : RCmdCb , } # [test] fn bindgen_test_layout_r_cmd_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_cmd_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_item_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cmd_item_t) , "::" , stringify ! (callback))) ; } impl Default for r_cmd_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdItem = r_cmd_item_t ; pub type RCmdAlias = * mut [u64 ; 11usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_alias_val_t { pub data : * mut u8 , pub sz : :: std :: os :: raw :: c_int , pub is_str : bool , pub is_data : bool , } # [test] fn bindgen_test_layout_r_cmd_alias_val_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_alias_val_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_alias_val_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_cmd_alias_val_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_alias_val_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_alias_val_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_str) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (is_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_data) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (is_data))) ; } impl Default for r_cmd_alias_val_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdAliasVal = r_cmd_alias_val_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_t { pub data : * mut :: std :: os :: raw :: c_void , pub nullcallback : RCmdNullCb , pub cmds : [* mut RCmdItem ; 255usize] , pub macro_ : RCmdMacro , pub lcmds : * mut RList , pub plist : * mut RList , pub aliases : RCmdAlias , pub language : * mut :: std :: os :: raw :: c_void , pub ts_symbols_ht : * mut [u64 ; 11usize] , pub ht_cmds : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_t > () , 3936usize , concat ! ("Size of: " , stringify ! (r_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nullcallback) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (nullcallback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmds) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (cmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macro_) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (macro_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lcmds) as usize - ptr as usize } , 3888usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (lcmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plist) as usize - ptr as usize } , 3896usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (plist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aliases) as usize - ptr as usize } , 3904usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (aliases))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . language) as usize - ptr as usize } , 3912usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (language))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts_symbols_ht) as usize - ptr as usize } , 3920usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (ts_symbols_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_cmds) as usize - ptr as usize } , 3928usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (ht_cmds))) ; } impl Default for r_cmd_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmd = r_cmd_t ; extern "C" { pub fn r_cmd_new (data : * mut :: std :: os :: raw :: c_void) -> * mut RCmd ; } extern "C" { pub fn r_cmd_free (cmd : * mut RCmd) -> * mut RCmd ; } extern "C" { pub fn r_cmd_call (cmd : * mut RCmd , command : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_set_data (cmd : * mut RCmd , data : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cmd_add (cmd : * mut RCmd , command : * const :: std :: os :: raw :: c_char , callback : RCmdCb) -> bool ; } extern "C" { pub fn r_cmd_macro_item_new () -> * mut RCmdMacroItem ; } extern "C" { pub fn r_cmd_macro_item_free (item : * mut RCmdMacroItem) ; } extern "C" { pub fn r_cmd_macro_init (mac : * mut RCmdMacro) ; } extern "C" { pub fn r_cmd_macro_add (mac : * mut RCmdMacro , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_macro_rm (mac : * mut RCmdMacro , _name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_macro_list (mac : * mut RCmdMacro , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_macro_call (mac : * mut RCmdMacro , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_macro_break (mac : * mut RCmdMacro , value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_del (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_keys (cmd : * mut RCmd) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_set_cmd (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_set_str (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_set_raw (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const u8 , sz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_get (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char) -> * mut RCmdAliasVal ; } extern "C" { pub fn r_cmd_alias_append_str (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , a : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_append_raw (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , a : * const u8 , sz : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cmd_alias_val_strdup (v : * mut RCmdAliasVal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_val_strdup_b64 (v : * mut RCmdAliasVal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_free (cmd : * mut RCmd) ; } extern "C" { pub fn r_cmd_macro_fini (mac : * mut RCmdMacro) ; } pub const RSignType_R_SIGN_BYTES : RSignType = 98 ; pub const RSignType_R_SIGN_ANAL : RSignType = 97 ; pub const RSignType_R_SIGN_COMMENT : RSignType = 99 ; pub const RSignType_R_SIGN_GRAPH : RSignType = 103 ; pub const RSignType_R_SIGN_OFFSET : RSignType = 111 ; pub const RSignType_R_SIGN_NAME : RSignType = 110 ; pub const RSignType_R_SIGN_RAWNAME : RSignType = 82 ; pub const RSignType_R_SIGN_DEMANGLED : RSignType = 100 ; pub const RSignType_R_SIGN_REFS : RSignType = 114 ; pub const RSignType_R_SIGN_XREFS : RSignType = 120 ; pub const RSignType_R_SIGN_VARS : RSignType = 118 ; pub const RSignType_R_SIGN_TYPES : RSignType = 116 ; pub const RSignType_R_SIGN_COLLISIONS : RSignType = 67 ; pub const RSignType_R_SIGN_NEXT : RSignType = 78 ; pub const RSignType_R_SIGN_BBHASH : RSignType = 104 ; pub const RSignType_R_SIGN_END : RSignType = 0 ; pub type RSignType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_sign_graph_t { pub cc : :: std :: os :: raw :: c_int , pub nbbs : :: std :: os :: raw :: c_int , pub edges : :: std :: os :: raw :: c_int , pub ebbs : :: std :: os :: raw :: c_int , pub bbsum : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_sign_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_graph_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_sign_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_graph_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_sign_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbbs) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (nbbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edges) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ebbs) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (ebbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbsum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (bbsum))) ; } pub type RSignGraph = r_sign_graph_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_bytes_t { pub size : :: std :: os :: raw :: c_int , pub bytes : * mut u8 , pub mask : * mut u8 , } # [test] fn bindgen_test_layout_r_sign_bytes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_bytes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_bytes_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_sign_bytes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_bytes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_bytes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (mask))) ; } impl Default for r_sign_bytes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignBytes = r_sign_bytes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_hash_t { pub bbhash : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_sign_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_hash_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_sign_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbhash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_hash_t) , "::" , stringify ! (bbhash))) ; } impl Default for r_sign_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignHash = r_sign_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub rawname : * mut :: std :: os :: raw :: c_char , pub demangled : * mut :: std :: os :: raw :: c_char , pub next : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub types : * mut :: std :: os :: raw :: c_char , pub space : * const RSpace , pub bytes : * mut RSignBytes , pub graph : * mut RSignGraph , pub addr : u64 , pub refs : * mut RList , pub xrefs : * mut RList , pub collisions : * mut RList , pub vars : * mut RList , pub hash : * mut RSignHash , } # [test] fn bindgen_test_layout_r_sign_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_item_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_sign_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (rawname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangled) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (demangled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . types) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (refs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xrefs) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (xrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . collisions) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (collisions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (hash))) ; } impl Default for r_sign_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignItem = r_sign_item_t ; pub type RSignForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , user : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RSignSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , kw : * mut RSearchKeyword , addr : u64 , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RSignMatchCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , fcn : * mut RAnalFunction , stypes : * mut RSignType , user : * mut :: std :: os :: raw :: c_void , col : * mut RList) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_search_met { pub stypes : [RSignType ; 18usize] , pub mincc : :: std :: os :: raw :: c_int , pub minsz : :: std :: os :: raw :: c_int , pub anal : * mut RAnal , pub user : * mut :: std :: os :: raw :: c_void , pub cb : RSignMatchCallback , } # [test] fn bindgen_test_layout_r_sign_search_met () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_search_met > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_search_met > () , 104usize , concat ! ("Size of: " , stringify ! (r_sign_search_met))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_search_met > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_search_met))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stypes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (stypes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mincc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (mincc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minsz) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (minsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (cb))) ; } impl Default for r_sign_search_met { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignSearchMetrics = r_sign_search_met ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_search_t { pub search : * mut RSearch , pub items : * mut RList , pub cb : RSignSearchCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_sign_search_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_search_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_search_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_sign_search_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_search_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_search_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . search) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . items) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (items))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (user))) ; } impl Default for r_sign_search_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignSearch = r_sign_search_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_sign_options_t { pub bytes_diff_threshold : f64 , pub graph_diff_threshold : f64 , } # [test] fn bindgen_test_layout_r_sign_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_options_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_sign_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes_diff_threshold) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_options_t) , "::" , stringify ! (bytes_diff_threshold))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_diff_threshold) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_options_t) , "::" , stringify ! (graph_diff_threshold))) ; } pub type RSignOptions = r_sign_options_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RSignCloseMatch { pub score : f64 , pub bscore : f64 , pub gscore : f64 , pub item : * mut RSignItem , } # [test] fn bindgen_test_layout_RSignCloseMatch () { const UNINIT : :: std :: mem :: MaybeUninit < RSignCloseMatch > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RSignCloseMatch > () , 32usize , concat ! ("Size of: " , stringify ! (RSignCloseMatch))) ; assert_eq ! (:: std :: mem :: align_of :: < RSignCloseMatch > () , 8usize , concat ! ("Alignment of " , stringify ! (RSignCloseMatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . score) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (score))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bscore) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (bscore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gscore) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (gscore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . item) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (item))) ; } impl Default for RSignCloseMatch { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_sign_add_bytes (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_anal (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_graph (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , graph : RSignGraph) -> bool ; } extern "C" { pub fn r_sign_all_functions (a : * mut RAnal , merge : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_add_func (a : * mut RAnal , fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_addto_item (a : * mut RAnal , it : * mut RSignItem , fcn : * mut RAnalFunction , type_ : RSignType) -> bool ; } extern "C" { pub fn r_sign_add_addr (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_sign_add_name (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , realname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_comment (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , comment : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_types (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , types : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_refs (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , refs : * mut RList) -> bool ; } extern "C" { pub fn r_sign_add_xrefs (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , xrefs : * mut RList) -> bool ; } extern "C" { pub fn r_sign_add_vars (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , vars : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_delete (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_list (a : * mut RAnal , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_sign_get_list (a : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_sign_add_hash (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sign_add_bb_hash (a : * mut RAnal , fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_calc_bbhash (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_deserialize (a : * mut RAnal , it : * mut RSignItem , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_get_item (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RSignItem ; } extern "C" { pub fn r_sign_add_item (a : * mut RAnal , it : * mut RSignItem) -> bool ; } extern "C" { pub fn r_sign_foreach (a : * mut RAnal , cb : RSignForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_sign_type_to_name (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_search_new () -> * mut RSignSearch ; } extern "C" { pub fn r_sign_search_free (ss : * mut RSignSearch) ; } extern "C" { pub fn r_sign_search_init (a : * mut RAnal , ss : * mut RSignSearch , minsz : :: std :: os :: raw :: c_int , cb : RSignSearchCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_sign_search_update (a : * mut RAnal , ss : * mut RSignSearch , at : * mut u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_resolve_collisions (a : * mut RAnal) -> bool ; } extern "C" { pub fn r_sign_metric_search (a : * mut RAnal , sm : * mut RSignSearchMetrics) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_fcn_match_metrics (sm : * mut RSignSearchMetrics , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_load (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char , merge : bool) -> bool ; } extern "C" { pub fn r_sign_load_gz (a : * mut RAnal , filename : * const :: std :: os :: raw :: c_char , merge : bool) -> bool ; } extern "C" { pub fn r_sign_path (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_save (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_item_new () -> * mut RSignItem ; } extern "C" { pub fn r_sign_item_free (item : * mut RSignItem) ; } extern "C" { pub fn r_sign_graph_free (graph : * mut RSignGraph) ; } extern "C" { pub fn r_sign_bytes_free (bytes : * mut RSignBytes) ; } extern "C" { pub fn r_sign_hash_free (hash : * mut RSignHash) ; } extern "C" { pub fn r_sign_fcn_refs (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_fcn_xrefs (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_fcn_vars (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_is_flirt (buf : * mut RBuffer) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_flirt_dump (anal : * const RAnal , flirt_file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sign_flirt_scan (anal : * mut RAnal , flirt_file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sign_find_closest_sig (a : * mut RAnal , it : * mut RSignItem , count : :: std :: os :: raw :: c_int , score_threshold : f64) -> * mut RList ; } extern "C" { pub fn r_sign_find_closest_fcn (a : * mut RAnal , it : * mut RSignItem , count : :: std :: os :: raw :: c_int , score_threshold : f64) -> * mut RList ; } extern "C" { pub fn r_sign_close_match_free (match_ : * mut RSignCloseMatch) ; } extern "C" { pub fn r_sign_diff (a : * mut RAnal , options : * mut RSignOptions , other_space_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_diff_by_name (a : * mut RAnal , options : * mut RSignOptions , other_space_name : * const :: std :: os :: raw :: c_char , not_matching : bool) -> bool ; } extern "C" { pub fn r_sign_options_new (bytes_thresh : * const :: std :: os :: raw :: c_char , graph_thresh : * const :: std :: os :: raw :: c_char) -> * mut RSignOptions ; } extern "C" { pub fn r_sign_options_free (options : * mut RSignOptions) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RHashMD5Context { pub state : [u32 ; 4usize] , pub count : [u32 ; 2usize] , pub buffer : [u8 ; 64usize] , } # [test] fn bindgen_test_layout_RHashMD5Context () { const UNINIT : :: std :: mem :: MaybeUninit < RHashMD5Context > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RHashMD5Context > () , 88usize , concat ! ("Size of: " , stringify ! (RHashMD5Context))) ; assert_eq ! (:: std :: mem :: align_of :: < RHashMD5Context > () , 4usize , concat ! ("Alignment of " , stringify ! (RHashMD5Context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (buffer))) ; } impl Default for RHashMD5Context { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RHashShaContext { pub H : [u32 ; 5usize] , pub W : [u32 ; 80usize] , pub lenW : :: std :: os :: raw :: c_int , pub sizeHi : u32 , pub sizeLo : u32 , } # [test] fn bindgen_test_layout_RHashShaContext () { const UNINIT : :: std :: mem :: MaybeUninit < RHashShaContext > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RHashShaContext > () , 352usize , concat ! ("Size of: " , stringify ! (RHashShaContext))) ; assert_eq ! (:: std :: mem :: align_of :: < RHashShaContext > () , 4usize , concat ! ("Alignment of " , stringify ! (RHashShaContext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . H) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (H))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . W) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (W))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lenW) as usize - ptr as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (lenW))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sizeHi) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (sizeHi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sizeLo) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (sizeLo))) ; } impl Default for RHashShaContext { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _SHA256_CTX { pub state : [u32 ; 8usize] , pub bitcount : u64 , pub buffer : [u8 ; 64usize] , } # [test] fn bindgen_test_layout__SHA256_CTX () { const UNINIT : :: std :: mem :: MaybeUninit < _SHA256_CTX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _SHA256_CTX > () , 104usize , concat ! ("Size of: " , stringify ! (_SHA256_CTX))) ; assert_eq ! (:: std :: mem :: align_of :: < _SHA256_CTX > () , 8usize , concat ! ("Alignment of " , stringify ! (_SHA256_CTX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitcount) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (bitcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (buffer))) ; } impl Default for _SHA256_CTX { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSha256Context = _SHA256_CTX ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _SHA512_CTX { pub state : [u64 ; 8usize] , pub bitcount : [u64 ; 2usize] , pub buffer : [u8 ; 128usize] , } # [test] fn bindgen_test_layout__SHA512_CTX () { const UNINIT : :: std :: mem :: MaybeUninit < _SHA512_CTX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _SHA512_CTX > () , 208usize , concat ! ("Size of: " , stringify ! (_SHA512_CTX))) ; assert_eq ! (:: std :: mem :: align_of :: < _SHA512_CTX > () , 8usize , concat ! ("Alignment of " , stringify ! (_SHA512_CTX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitcount) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (bitcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (buffer))) ; } impl Default for _SHA512_CTX { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSha512Context = _SHA512_CTX ; pub type RSha384Context = RSha512Context ; pub type utcrc = u64 ; extern "C" { pub fn r_hash_fletcher8 (d : * const u8 , length : usize) -> u8 ; } extern "C" { pub fn r_hash_fletcher16 (data : * const u8 , len : usize) -> u16 ; } extern "C" { pub fn r_hash_fletcher32 (data : * const u8 , len : usize) -> u32 ; } extern "C" { pub fn r_hash_fletcher64 (addr : * const u8 , len : usize) -> u64 ; } pub const CRC_PRESETS_CRC_PRESET_8_SMBUS : CRC_PRESETS = 0 ; pub const CRC_PRESETS_CRC_PRESET_15_CAN : CRC_PRESETS = 1 ; pub const CRC_PRESETS_CRC_PRESET_16 : CRC_PRESETS = 2 ; pub const CRC_PRESETS_CRC_PRESET_16_CITT : CRC_PRESETS = 3 ; pub const CRC_PRESETS_CRC_PRESET_16_USB : CRC_PRESETS = 4 ; pub const CRC_PRESETS_CRC_PRESET_16_HDLC : CRC_PRESETS = 5 ; pub const CRC_PRESETS_CRC_PRESET_24 : CRC_PRESETS = 6 ; pub const CRC_PRESETS_CRC_PRESET_32 : CRC_PRESETS = 7 ; pub const CRC_PRESETS_CRC_PRESET_32_ECMA_267 : CRC_PRESETS = 8 ; pub const CRC_PRESETS_CRC_PRESET_32C : CRC_PRESETS = 9 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_BZIP2 : CRC_PRESETS = 10 ; pub const CRC_PRESETS_CRC_PRESET_CRC32D : CRC_PRESETS = 11 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_MPEG2 : CRC_PRESETS = 12 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_POSIX : CRC_PRESETS = 13 ; pub const CRC_PRESETS_CRC_PRESET_CRC32Q : CRC_PRESETS = 14 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_JAMCRC : CRC_PRESETS = 15 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_XFER : CRC_PRESETS = 16 ; pub const CRC_PRESETS_CRC_PRESET_CRC64 : CRC_PRESETS = 17 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_ECMA182 : CRC_PRESETS = 18 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_WE : CRC_PRESETS = 19 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_XZ : CRC_PRESETS = 20 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_ISO : CRC_PRESETS = 21 ; pub const CRC_PRESETS_CRC_PRESET_SIZE : CRC_PRESETS = 22 ; pub type CRC_PRESETS = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_hash_t { pub md5 : RHashMD5Context , pub sha1 : RHashShaContext , pub sha256 : RSha256Context , pub sha384 : RSha384Context , pub sha512 : RSha512Context , pub rst : bool , pub entropy : f64 , pub digest : [u8 ; 128usize] , } # [test] fn bindgen_test_layout_r_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hash_t > () , 1104usize , concat ! ("Size of: " , stringify ! (r_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . md5) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (md5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha1) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha256) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha256))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha384) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha384))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha512) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha512))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rst) as usize - ptr as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (rst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entropy) as usize - ptr as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (entropy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digest) as usize - ptr as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (digest))) ; } impl Default for r_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_hash_seed_t { pub prefix : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_hash_seed_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hash_seed_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hash_seed_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_hash_seed_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hash_seed_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_hash_seed_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (len))) ; } impl Default for r_hash_seed_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RHashSeed = r_hash_seed_t ; extern "C" { pub fn r_hash_new (rst : bool , flags : u64) -> * mut r_hash_t ; } extern "C" { pub fn r_hash_free (ctx : * mut r_hash_t) ; } extern "C" { pub fn r_hash_do_sip (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_md4 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_ssdeep (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_md5 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha1 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha256 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha384 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha512 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_hmac_sha256 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int , key : * const u8 , klen : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_elf (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_tostring (ctx : * mut r_hash_t , name : * const :: std :: os :: raw :: c_char , data : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_name (bit : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_name_to_bits (name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_hash_size (bit : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_calculate (ctx : * mut r_hash_t , algobit : u64 , input : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_deviation (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_adler32 (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> u32 ; } extern "C" { pub fn r_hash_xxhash (buf : * const u8 , len : u64) -> u32 ; } extern "C" { pub fn r_hash_xor (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_xorpair (a : * const u8 , len : u64) -> u16 ; } extern "C" { pub fn r_hash_parity (buf : * const u8 , len : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_mod255 (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_luhn (buf : * const u8 , len : u64) -> u64 ; } extern "C" { pub fn r_hash_ssdeep (buf : * const u8 , len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_crc_preset (data : * const u8 , size : u32 , preset : CRC_PRESETS) -> utcrc ; } extern "C" { pub fn r_hash_sip (buf : * const u8 , len : u64) -> u64 ; } extern "C" { pub fn r_hash_hamdist (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> u8 ; } extern "C" { pub fn r_hash_entropy (data : * const u8 , len : u64) -> f64 ; } extern "C" { pub fn r_hash_entropy_fraction (data : * const u8 , len : u64) -> f64 ; } extern "C" { pub fn r_hash_pcprint (buffer : * const u8 , len : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_do_begin (ctx : * mut r_hash_t , flags : u64) ; } extern "C" { pub fn r_hash_do_end (ctx : * mut r_hash_t , flags : u64) ; } extern "C" { pub fn r_hash_do_spice (ctx : * mut r_hash_t , algo : u64 , loops : :: std :: os :: raw :: c_int , seed : * mut RHashSeed) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_arch_t { pub bits : :: std :: os :: raw :: c_int , pub length : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bytes : * const u8 , } # [test] fn bindgen_test_layout_r_bp_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_arch_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_bp_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (bytes))) ; } impl Default for r_bp_arch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointArch = r_bp_arch_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub type_ : :: std :: os :: raw :: c_int , pub nbps : :: std :: os :: raw :: c_int , pub bps : * mut RBreakpointArch , } # [test] fn bindgen_test_layout_r_bp_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bp_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbps) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (nbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (bps))) ; } impl Default for r_bp_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointPlugin = r_bp_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub module_name : * mut :: std :: os :: raw :: c_char , pub module_delta : i64 , pub addr : u64 , pub delta : u64 , pub size : :: std :: os :: raw :: c_int , pub swstep : bool , pub perm : :: std :: os :: raw :: c_int , pub hw : :: std :: os :: raw :: c_int , pub trace : :: std :: os :: raw :: c_int , pub internal : :: std :: os :: raw :: c_int , pub enabled : :: std :: os :: raw :: c_int , pub togglehits : :: std :: os :: raw :: c_int , pub hits : :: std :: os :: raw :: c_int , pub obytes : * mut u8 , pub bbytes : * mut u8 , pub pids : [:: std :: os :: raw :: c_int ; 10usize] , pub data : * mut :: std :: os :: raw :: c_char , pub cond : * mut :: std :: os :: raw :: c_char , pub expr : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bp_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_item_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_bp_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . module_name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (module_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . module_delta) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (module_delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swstep) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (swstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hw) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (hw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . internal) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (internal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . togglehits) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (togglehits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (hits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obytes) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (obytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbytes) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (bbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pids) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (pids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expr) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (expr))) ; } impl Default for r_bp_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointItem = r_bp_item_t ; pub type RBreakpointCallback = :: std :: option :: Option < unsafe extern "C" fn (bp : * mut r_bp_t , b : * mut RBreakpointItem , set : bool) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_t { pub user : * mut :: std :: os :: raw :: c_void , pub stepcont : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub bpinmaps : bool , pub coreb : RCoreBind , pub iob : RIOBind , pub cur : * mut RBreakpointPlugin , pub traces : * mut RList , pub plugins : * mut RList , pub breakpoint : RBreakpointCallback , pub nbps : :: std :: os :: raw :: c_int , pub nhwbps : :: std :: os :: raw :: c_int , pub bps : * mut RList , pub bps_idx : * mut * mut RBreakpointItem , pub bps_idx_count : :: std :: os :: raw :: c_int , pub delta : i64 , pub baddr : u64 , } # [test] fn bindgen_test_layout_r_bp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_t > () , 568usize , concat ! ("Size of: " , stringify ! (r_bp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stepcont) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (stepcont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpinmaps) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bpinmaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traces) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (traces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breakpoint) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (breakpoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbps) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (nbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nhwbps) as usize - ptr as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (nhwbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps_idx) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps_idx_count) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps_idx_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (baddr))) ; } impl Default for r_bp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpoint = r_bp_t ; extern "C" { pub fn r_bp_new () -> * mut RBreakpoint ; } extern "C" { pub fn r_bp_free (bp : * mut RBreakpoint) -> * mut RBreakpoint ; } extern "C" { pub fn r_bp_del (bp : * mut RBreakpoint , addr : u64) -> bool ; } extern "C" { pub fn r_bp_del_all (bp : * mut RBreakpoint) -> bool ; } extern "C" { pub fn r_bp_plugin_add (bp : * mut RBreakpoint , plugin : * mut RBreakpointPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_remove (bp : * mut RBreakpoint , plugin : * mut RBreakpointPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_use (bp : * mut RBreakpoint , name : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_del (bp : * mut RBreakpoint , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_list (bp : * mut RBreakpoint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bp_in (bp : * mut RBreakpoint , addr : u64 , perm : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_list (bp : * mut RBreakpoint , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bp_size (bp : * mut RBreakpoint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_get_bytes (bp : * mut RBreakpoint , buf : * mut u8 , len : :: std :: os :: raw :: c_int , endian : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_set_trace (bp : * mut RBreakpoint , addr : u64 , set : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_set_trace_all (bp : * mut RBreakpoint , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_enable (bp : * mut RBreakpoint , addr : u64 , set : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_enable_all (bp : * mut RBreakpoint , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_get_index (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_del_index (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_get_index_at (bp : * mut RBreakpoint , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_item_new (bp : * mut RBreakpoint) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_get_at (bp : * mut RBreakpoint , addr : u64) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_get_in (bp : * mut RBreakpoint , addr : u64 , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_is_valid (bp : * mut RBreakpoint , b : * mut RBreakpointItem) -> bool ; } extern "C" { pub fn r_bp_add_cond (bp : * mut RBreakpoint , cond : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bp_del_cond (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_add_fault (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_add_sw (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_add_hw (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_restore_one (bp : * mut RBreakpoint , b : * mut RBreakpointItem , set : bool) ; } extern "C" { pub fn r_bp_restore (bp : * mut RBreakpoint , set : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_restore_except (bp : * mut RBreakpoint , set : bool , addr : u64) -> bool ; } extern "C" { pub fn r_bp_traptrace_free (ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bp_traptrace_enable (bp : * mut RBreakpoint , enable : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_traptrace_reset (bp : * mut RBreakpoint , hard : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_traptrace_next (bp : * mut RBreakpoint , addr : u64) -> u64 ; } extern "C" { pub fn r_bp_traptrace_add (bp : * mut RBreakpoint , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_traptrace_free_at (bp : * mut RBreakpoint , from : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_traptrace_list (bp : * mut RBreakpoint) ; } extern "C" { pub fn r_bp_traptrace_at (bp : * mut RBreakpoint , from : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_traptrace_new () -> * mut RList ; } extern "C" { pub fn r_bp_watch_add (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , hw : :: std :: os :: raw :: c_int , rw : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } pub const RDebugRecoilMode_R_DBG_RECOIL_NONE : RDebugRecoilMode = 0 ; pub const RDebugRecoilMode_R_DBG_RECOIL_STEP : RDebugRecoilMode = 1 ; pub const RDebugRecoilMode_R_DBG_RECOIL_CONTINUE : RDebugRecoilMode = 2 ; pub type RDebugRecoilMode = :: std :: os :: raw :: c_uint ; pub const RDebugReasonType_R_DEBUG_REASON_DEAD : RDebugReasonType = - 1 ; pub const RDebugReasonType_R_DEBUG_REASON_NONE : RDebugReasonType = 0 ; pub const RDebugReasonType_R_DEBUG_REASON_SIGNAL : RDebugReasonType = 1 ; pub const RDebugReasonType_R_DEBUG_REASON_BREAKPOINT : RDebugReasonType = 2 ; pub const RDebugReasonType_R_DEBUG_REASON_TRACEPOINT : RDebugReasonType = 3 ; pub const RDebugReasonType_R_DEBUG_REASON_COND : RDebugReasonType = 4 ; pub const RDebugReasonType_R_DEBUG_REASON_READERR : RDebugReasonType = 5 ; pub const RDebugReasonType_R_DEBUG_REASON_STEP : RDebugReasonType = 6 ; pub const RDebugReasonType_R_DEBUG_REASON_ABORT : RDebugReasonType = 7 ; pub const RDebugReasonType_R_DEBUG_REASON_WRITERR : RDebugReasonType = 8 ; pub const RDebugReasonType_R_DEBUG_REASON_DIVBYZERO : RDebugReasonType = 9 ; pub const RDebugReasonType_R_DEBUG_REASON_ILLEGAL : RDebugReasonType = 10 ; pub const RDebugReasonType_R_DEBUG_REASON_UNKNOWN : RDebugReasonType = 11 ; pub const RDebugReasonType_R_DEBUG_REASON_ERROR : RDebugReasonType = 12 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_PID : RDebugReasonType = 13 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_TID : RDebugReasonType = 14 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_LIB : RDebugReasonType = 15 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_PID : RDebugReasonType = 16 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_TID : RDebugReasonType = 17 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_LIB : RDebugReasonType = 18 ; pub const RDebugReasonType_R_DEBUG_REASON_TRAP : RDebugReasonType = 19 ; pub const RDebugReasonType_R_DEBUG_REASON_SWI : RDebugReasonType = 20 ; pub const RDebugReasonType_R_DEBUG_REASON_INT : RDebugReasonType = 21 ; pub const RDebugReasonType_R_DEBUG_REASON_FPU : RDebugReasonType = 22 ; pub const RDebugReasonType_R_DEBUG_REASON_USERSUSP : RDebugReasonType = 23 ; pub const RDebugReasonType_R_DEBUG_REASON_SEGFAULT : RDebugReasonType = 24 ; pub const RDebugReasonType_R_DEBUG_REASON_STOPPED : RDebugReasonType = 25 ; pub const RDebugReasonType_R_DEBUG_REASON_TERMINATED : RDebugReasonType = 26 ; pub type RDebugReasonType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_reason_t { pub type_ : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub signum : :: std :: os :: raw :: c_int , pub bp_addr : u64 , pub timestamp : u64 , pub addr : u64 , pub ptr : u64 , } # [test] fn bindgen_test_layout_r_debug_reason_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_reason_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_reason_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_debug_reason_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_reason_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_reason_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signum) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (signum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (bp_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timestamp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (timestamp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (ptr))) ; } pub type RDebugReason = r_debug_reason_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_map_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub addr_end : u64 , pub size : u64 , pub offset : u64 , pub file : * mut :: std :: os :: raw :: c_char , pub perm : :: std :: os :: raw :: c_int , pub user : :: std :: os :: raw :: c_int , pub shared : bool , } # [test] fn bindgen_test_layout_r_debug_map_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_map_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_map_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_debug_map_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_map_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_map_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (addr_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shared) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (shared))) ; } impl Default for r_debug_map_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugMap = r_debug_map_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_desc_t { pub fd : :: std :: os :: raw :: c_int , pub path : * mut :: std :: os :: raw :: c_char , pub perm : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , pub off : u64 , } # [test] fn bindgen_test_layout_r_debug_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_desc_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_debug_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (off))) ; } impl Default for r_debug_desc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugDesc = r_debug_desc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_snap_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub addr_end : u64 , pub size : u32 , pub data : * mut u8 , pub perm : :: std :: os :: raw :: c_int , pub user : :: std :: os :: raw :: c_int , pub shared : bool , pub crc : u32 , pub comment : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_debug_snap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_snap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_snap_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_debug_snap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_snap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_snap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (addr_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shared) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crc) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (crc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (comment))) ; } impl Default for r_debug_snap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugSnap = r_debug_snap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_checkpoint_t { pub cnum : :: std :: os :: raw :: c_int , pub arena : [* mut RRegArena ; 10usize] , pub snaps : * mut RList , } # [test] fn bindgen_test_layout_r_debug_checkpoint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_checkpoint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_checkpoint_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_debug_checkpoint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_checkpoint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_checkpoint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cnum) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (cnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snaps) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (snaps))) ; } impl Default for r_debug_checkpoint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugCheckpoint = r_debug_checkpoint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_session_t { pub cnum : u32 , pub maxcnum : u32 , pub cur_chkpt : * mut RDebugCheckpoint , pub checkpoints : * mut RVector , pub memory : * mut [u64 ; 11usize] , pub registers : * mut [u64 ; 11usize] , pub reasontype : :: std :: os :: raw :: c_int , pub bp : * mut RBreakpointItem , } # [test] fn bindgen_test_layout_r_debug_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_session_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_debug_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cnum) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (cnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxcnum) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (maxcnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_chkpt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (cur_chkpt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . checkpoints) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (checkpoints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memory) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (memory))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . registers) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (registers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reasontype) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (reasontype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (bp))) ; } impl Default for r_debug_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugSession = r_debug_session_t ; pub type RVecDebugTracepoint = r_vec_RVecDebugTracepoint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_trace_t { pub traces : * mut RVecDebugTracepoint , pub count : :: std :: os :: raw :: c_int , pub enabled : :: std :: os :: raw :: c_int , pub tag : :: std :: os :: raw :: c_int , pub dup : :: std :: os :: raw :: c_int , pub addresses : * mut :: std :: os :: raw :: c_char , pub ht : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_debug_trace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_trace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_trace_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_debug_trace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_trace_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_trace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traces) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (traces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (dup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addresses) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (addresses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (ht))) ; } impl Default for r_debug_trace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugTrace = r_debug_trace_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_tracepoint_item_t { pub addr : u64 , pub tags : u64 , pub tag : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub count : :: std :: os :: raw :: c_int , pub times : :: std :: os :: raw :: c_int , pub stamp : u64 , } # [test] fn bindgen_test_layout_r_debug_tracepoint_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_tracepoint_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_tracepoint_item_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_debug_tracepoint_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_tracepoint_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_tracepoint_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tags) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . times) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (times))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stamp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (stamp))) ; } pub type RDebugTracepointItem = r_debug_tracepoint_item_t ; pub type RDebug = r_debug_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_info_t { pub pid : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub uid : :: std :: os :: raw :: c_int , pub gid : :: std :: os :: raw :: c_int , pub usr : * mut :: std :: os :: raw :: c_char , pub exe : * mut :: std :: os :: raw :: c_char , pub cmdline : * mut :: std :: os :: raw :: c_char , pub libname : * mut :: std :: os :: raw :: c_char , pub cwd : * mut :: std :: os :: raw :: c_char , pub status : :: std :: os :: raw :: c_int , pub signum : :: std :: os :: raw :: c_int , pub lib : * mut :: std :: os :: raw :: c_void , pub thread : * mut :: std :: os :: raw :: c_void , pub kernel_stack : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_debug_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_info_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_debug_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (usr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exe) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (exe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdline) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (cmdline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cwd) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signum) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (signum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lib) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (lib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kernel_stack) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (kernel_stack))) ; } impl Default for r_debug_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugInfo = r_debug_info_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_desc_plugin_t { pub open : :: std :: option :: Option < unsafe extern "C" fn (path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub read : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub write : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub seek : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int > , pub dup : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , newfd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub list : :: std :: option :: Option < unsafe extern "C" fn (pid : :: std :: os :: raw :: c_int) -> * mut RList > , } # [test] fn bindgen_test_layout_r_debug_desc_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_desc_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_desc_plugin_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_debug_desc_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_desc_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_desc_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (dup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (list))) ; } pub type RDebugDescPlugin = r_debug_desc_plugin_t ; pub type RDebugPluginSession = r_debug_plugin_session_t ; pub type RDebugCmdCb = :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_plugin_t { pub meta : RPluginMeta , pub bits : RSysBits , pub arch : * const :: std :: os :: raw :: c_char , pub canstep : :: std :: os :: raw :: c_int , pub keepio : :: std :: os :: raw :: c_int , pub init_plugin : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , ds : * mut RDebugPluginSession) -> bool > , pub fini_plugin : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , ds : * mut RDebugPluginSession) -> bool > , pub info : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , arg : * const :: std :: os :: raw :: c_char) -> * mut RDebugInfo > , pub startv : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub attach : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool > , pub detach : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool > , pub select : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int) -> bool > , pub threads : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub pids : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub tids : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub backtrace : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , count : :: std :: os :: raw :: c_int) -> RList > , pub stop : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub step : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub step_over : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub cont : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool > , pub wait : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> RDebugReasonType > , pub gcore : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , dest : * mut RBuffer) -> bool > , pub kill : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool > , pub kill_list : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub contsc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , sc : :: std :: os :: raw :: c_int) -> bool > , pub frames : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , at : u64) -> * mut RList > , pub breakpoint : RBreakpointCallback , pub reg_read : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , buf : * mut u8 , size : :: std :: os :: raw :: c_int) -> bool > , pub reg_write : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , size : :: std :: os :: raw :: c_int) -> bool > , pub reg_profile : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut :: std :: os :: raw :: c_char > , pub set_reg_profile : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub map_get : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub modules_get : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub map_alloc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , thp : bool) -> * mut RDebugMap > , pub map_dealloc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int) -> bool > , pub map_protect : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , perms : :: std :: os :: raw :: c_int) -> bool > , pub init_debugger : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub drx : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , n : :: std :: os :: raw :: c_int , addr : u64 , size : :: std :: os :: raw :: c_int , rwx : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int , api_type : :: std :: os :: raw :: c_int) -> bool > , pub desc : RDebugDescPlugin , pub cmd : RDebugCmdCb , } # [test] fn bindgen_test_layout_r_debug_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_plugin_t > () , 416usize , concat ! ("Size of: " , stringify ! (r_debug_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . canstep) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (canstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keepio) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (keepio))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init_plugin) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (init_plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini_plugin) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (fini_plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . startv) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (startv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attach) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (attach))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . detach) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (detach))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . select) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (select))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pids) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (pids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tids) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (tids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . backtrace) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (backtrace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . step) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . step_over) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (step_over))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cont) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (cont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wait) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (wait))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gcore) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (gcore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (kill))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_list) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (kill_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contsc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (contsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frames) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (frames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breakpoint) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (breakpoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_reg_profile) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (set_reg_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . modules_get) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (modules_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_alloc) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_alloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_dealloc) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_dealloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_protect) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_protect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init_debugger) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (init_debugger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . drx) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (drx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (cmd))) ; } impl Default for r_debug_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugPlugin = r_debug_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_plugin_session_t { pub dbg : * mut RDebug , pub plugin : * mut RDebugPlugin , pub plugin_data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_debug_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_debug_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (plugin_data))) ; } impl Default for r_debug_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVecDebugPluginSession = r_vec_RVecDebugPluginSession_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_t { pub arch : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub hitinfo : :: std :: os :: raw :: c_int , pub main_pid : :: std :: os :: raw :: c_int , pub pid : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub forked_pid : :: std :: os :: raw :: c_int , pub n_threads : :: std :: os :: raw :: c_int , pub threads : * mut RList , pub malloc : * mut :: std :: os :: raw :: c_char , pub bpsize : :: std :: os :: raw :: c_int , pub btalgo : * mut :: std :: os :: raw :: c_char , pub btdepth : :: std :: os :: raw :: c_int , pub regcols : :: std :: os :: raw :: c_int , pub swstep : :: std :: os :: raw :: c_int , pub stop_all_threads : :: std :: os :: raw :: c_int , pub trace_forks : :: std :: os :: raw :: c_int , pub trace_execs : :: std :: os :: raw :: c_int , pub trace_aftersyscall : :: std :: os :: raw :: c_int , pub trace_clone : :: std :: os :: raw :: c_int , pub follow_child : :: std :: os :: raw :: c_int , pub glob_libs : * mut :: std :: os :: raw :: c_char , pub glob_unlibs : * mut :: std :: os :: raw :: c_char , pub consbreak : bool , pub continue_all_threads : bool , pub steps : :: std :: os :: raw :: c_int , pub reason : RDebugReason , pub recoil_mode : RDebugRecoilMode , pub stopaddr : u64 , pub trace : * mut RDebugTrace , pub tracenodes : * mut Sdb , pub tree : * mut RTree , pub call_frames : * mut RList , pub reg : * mut RReg , pub q_regs : * mut RList , pub creg : * const :: std :: os :: raw :: c_char , pub bp : * mut RBreakpoint , pub snap_path : * mut :: std :: os :: raw :: c_char , pub cb_printf : PrintfCallback , pub iob : RIOBind , pub current : * mut RDebugPluginSession , pub plugins : * mut RVecDebugPluginSession , pub user : * mut :: std :: os :: raw :: c_void , pub pc_at_bp : bool , pub pc_at_bp_set : bool , pub ev : * mut REvent , pub anal : * mut RAnal , pub maps : * mut RList , pub maps_user : * mut RList , pub snaps : * mut RList , pub trace_continue : bool , pub cur_op : * mut RAnalOp , pub session : * mut RDebugSession , pub sgnls : * mut Sdb , pub coreb : RCoreBind , pub pj : * mut PJ , pub _mode : :: std :: os :: raw :: c_int , pub num : * mut RNum , pub egg : * mut REgg , pub verbose : bool , pub maxsnapsize : usize , pub main_arena_resolved : bool , pub glibc_version_resolved : bool , pub glibc_version : :: std :: os :: raw :: c_int , pub glibc_version_d : f64 , } # [test] fn bindgen_test_layout_r_debug_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_t > () , 912usize , concat ! ("Size of: " , stringify ! (r_debug_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hitinfo) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (hitinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_pid) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (main_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forked_pid) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (forked_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_threads) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (n_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . malloc) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (malloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpsize) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bpsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btalgo) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (btalgo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btdepth) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (btdepth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regcols) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (regcols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swstep) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (swstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop_all_threads) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (stop_all_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_forks) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_forks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_execs) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_execs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_aftersyscall) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_aftersyscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_clone) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_clone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . follow_child) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (follow_child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob_libs) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glob_libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob_unlibs) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glob_unlibs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consbreak) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (consbreak))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . continue_all_threads) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (continue_all_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . steps) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (steps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reason) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (reason))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recoil_mode) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (recoil_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stopaddr) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (stopaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracenodes) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tracenodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call_frames) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (call_frames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . q_regs) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (q_regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snap_path) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (snap_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc_at_bp) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pc_at_bp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc_at_bp_set) as usize - ptr as usize } , 601usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pc_at_bp_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps_user) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maps_user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snaps) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (snaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_continue) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_continue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_op) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (cur_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (session))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sgnls) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (sgnls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _mode) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . egg) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (egg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxsnapsize) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maxsnapsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_arena_resolved) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (main_arena_resolved))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version_resolved) as usize - ptr as usize } , 897usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version_resolved))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version_d) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version_d))) ; } impl Default for r_debug_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_pid_t { pub pid : :: std :: os :: raw :: c_int , pub ppid : :: std :: os :: raw :: c_int , pub status : :: std :: os :: raw :: c_char , pub runnable : :: std :: os :: raw :: c_int , pub signalled : bool , pub path : * mut :: std :: os :: raw :: c_char , pub uid : :: std :: os :: raw :: c_int , pub gid : :: std :: os :: raw :: c_int , pub pc : u64 , } # [test] fn bindgen_test_layout_r_debug_pid_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_pid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_pid_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_debug_pid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_pid_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_pid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ppid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (ppid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . runnable) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (runnable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signalled) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (signalled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (pc))) ; } impl Default for r_debug_pid_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugPid = r_debug_pid_t ; extern "C" { pub fn r_debug_new (hard : :: std :: os :: raw :: c_int) -> * mut RDebug ; } extern "C" { pub fn r_debug_free (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_attach (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_detach (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_startv (dbg : * mut RDebug , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_start (dbg : * mut RDebug , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_stop_reason (dbg : * mut RDebug) -> RDebugReasonType ; } extern "C" { pub fn r_debug_reason_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_wait (dbg : * mut RDebug , bp : * mut * mut RBreakpointItem) -> RDebugReasonType ; } extern "C" { pub fn r_debug_cmd (dbg : * mut RDebug , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step_over (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_until (dbg : * mut RDebug , addr : u64) -> bool ; } extern "C" { pub fn r_debug_continue_until_nonblock (dbg : * mut RDebug , addr : u64) -> bool ; } extern "C" { pub fn r_debug_continue_until_optype (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , over : bool) -> bool ; } extern "C" { pub fn r_debug_continue_until_nontraced (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_continue_syscall (dbg : * mut RDebug , sc : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_syscalls (dbg : * mut RDebug , sc : * mut :: std :: os :: raw :: c_int , n_sc : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_kill (dbg : * mut RDebug , signal : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_with_signal (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_contsc (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_select (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_pid_list (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_pid_new (path : * const :: std :: os :: raw :: c_char , pid : :: std :: os :: raw :: c_int , uid : :: std :: os :: raw :: c_int , status : :: std :: os :: raw :: c_char , pc : u64) -> * mut RDebugPid ; } extern "C" { pub fn r_debug_pid_free (pid : * mut RDebugPid) -> * mut RDebugPid ; } extern "C" { pub fn r_debug_pids (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_debug_set_arch (dbg : * mut RDebug , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_use (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_info (dbg : * mut RDebug , arg : * const :: std :: os :: raw :: c_char) -> * mut RDebugInfo ; } extern "C" { pub fn r_debug_info_free (rdi : * mut RDebugInfo) ; } extern "C" { pub fn r_debug_get_baddr (dbg : * mut RDebug , file : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_debug_signal_init (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_signal_fini (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_signal_send (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_what (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_resolve (dbg : * mut RDebug , signame : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_resolve_i (dbg : * mut RDebug , signum : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_signal_setup (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int , opt : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_signal_set (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_kill (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_kill_list (dbg : * mut RDebug) -> * mut RList ; } extern "C" { pub fn r_debug_kill_setup (dbg : * mut RDebug , sig : :: std :: os :: raw :: c_int , action : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_init_plugins (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_fini_plugins (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_plugin_set (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_plugin_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_plugin_add (dbg : * mut RDebug , plugin : * mut RDebugPlugin) -> bool ; } extern "C" { pub fn r_debug_plugin_remove (dbg : * mut RDebug , plugin : * mut RDebugPlugin) -> bool ; } extern "C" { pub fn r_debug_plugin_set_reg_profile (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_modules_list (arg1 : * mut RDebug) -> * mut RList ; } extern "C" { pub fn r_debug_map_alloc (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , thp : bool) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_dealloc (dbg : * mut RDebug , map : * mut RDebugMap) -> bool ; } extern "C" { pub fn r_debug_map_list_new () -> * mut RList ; } extern "C" { pub fn r_debug_map_get (dbg : * mut RDebug , addr : u64) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_new (name : * mut :: std :: os :: raw :: c_char , addr : u64 , addr_end : u64 , perm : :: std :: os :: raw :: c_int , user : :: std :: os :: raw :: c_int) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_free (map : * mut RDebugMap) ; } extern "C" { pub fn r_debug_map_list (dbg : * mut RDebug , addr : u64 , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_map_list_visual (dbg : * mut RDebug , addr : u64 , input : * const :: std :: os :: raw :: c_char , colors : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_desc_new (fd : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int , off : :: std :: os :: raw :: c_int) -> * mut RDebugDesc ; } extern "C" { pub fn r_debug_desc_free (p : * mut RDebugDesc) ; } extern "C" { pub fn r_debug_desc_open (dbg : * mut RDebug , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_close (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_dup (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , newfd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_read (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_seek (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_write (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_list (dbg : * mut RDebug , show_commands : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_reg_sync (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , write : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_reg_list (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , size : :: std :: os :: raw :: c_int , pj : * mut PJ , rad : :: std :: os :: raw :: c_int , use_color : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_reg_set (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char , num : u64) -> bool ; } extern "C" { pub fn r_debug_reg_get (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_debug_reg_get_err (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char , err : * mut bool , value : * mut utX) -> u64 ; } extern "C" { pub fn r_debug_execute (dbg : * mut RDebug , buf : * const u8 , len : :: std :: os :: raw :: c_int , ret : * mut u64 , restore : bool , ignore_stack : bool) -> bool ; } extern "C" { pub fn r_debug_map_sync (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_stop (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_frames (dbg : * mut RDebug , at : u64) -> * mut RList ; } extern "C" { pub fn r_debug_is_dead (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_map_protect (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , perms : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_arg_get (dbg : * mut RDebug , cc : * const :: std :: os :: raw :: c_char , num : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_debug_arg_set (dbg : * mut RDebug , cc : * const :: std :: os :: raw :: c_char , num : :: std :: os :: raw :: c_int , value : u64) -> bool ; } extern "C" { pub fn r_debug_bp_add (dbg : * mut RDebug , addr : u64 , hw : :: std :: os :: raw :: c_int , watch : bool , rw : :: std :: os :: raw :: c_int , module : * mut :: std :: os :: raw :: c_char , m_delta : i64) -> * mut RBreakpointItem ; } extern "C" { pub fn r_debug_bp_rebase (dbg : * mut RDebug , old_base : u64 , new_base : u64) ; } extern "C" { pub fn r_debug_bp_update (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_thread_list (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_tracenodes_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_trace_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_trace_pc (dbg : * mut RDebug , pc : u64) -> bool ; } extern "C" { pub fn r_debug_trace_op (dbg : * mut RDebug , op : * mut RAnalOp) ; } extern "C" { pub fn r_debug_trace_at (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_trace_get (dbg : * mut RDebug , addr : u64) -> * mut RDebugTracepointItem ; } extern "C" { pub fn r_debug_trace_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int , offset : u64 , t : * mut RTable) ; } extern "C" { pub fn r_debug_trace_add (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int) -> * mut RDebugTracepointItem ; } extern "C" { pub fn r_debug_trace_new () -> * mut RDebugTrace ; } extern "C" { pub fn r_debug_trace_free (dbg : * mut RDebugTrace) ; } extern "C" { pub fn r_debug_trace_tag (dbg : * mut RDebug , tag : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_child_fork (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_child_clone (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_drx_list (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_drx_set (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int , rwx : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_drx_get (dbg : * mut RDebug , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_drx_unset (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_esil_stepi (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_esil_step (dbg : * mut RDebug , count : u32) -> u64 ; } extern "C" { pub fn r_debug_esil_continue (dbg : * mut RDebug) -> u64 ; } extern "C" { pub fn r_debug_esil_watch (dbg : * mut RDebug , rwx : :: std :: os :: raw :: c_int , dev : :: std :: os :: raw :: c_int , expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_esil_watch_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_esil_watch_list (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_esil_watch_empty (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_esil_prestep (d : * mut RDebug , p : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_add_checkpoint (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_session_add_reg_change (session : * mut RDebugSession , arena : :: std :: os :: raw :: c_int , offset : u64 , data : u64) -> bool ; } extern "C" { pub fn r_debug_session_add_mem_change (session : * mut RDebugSession , addr : u64 , data : u8) -> bool ; } extern "C" { pub fn r_debug_session_restore_reg_mem (dbg : * mut RDebug , cnum : u32) ; } extern "C" { pub fn r_debug_session_list_memory (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_session_serialize (session : * mut RDebugSession , db : * mut Sdb) ; } extern "C" { pub fn r_debug_session_deserialize (session : * mut RDebugSession , db : * mut Sdb) ; } extern "C" { pub fn r_debug_session_save (session : * mut RDebugSession , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_session_load (dbg : * mut RDebug , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_trace_ins_before (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_trace_ins_after (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_session_new () -> * mut RDebugSession ; } extern "C" { pub fn r_debug_session_free (session : * mut RDebugSession) ; } extern "C" { pub fn r_debug_snap_map (dbg : * mut RDebug , map : * mut RDebugMap) -> * mut RDebugSnap ; } extern "C" { pub fn r_debug_snap_contains (snap : * mut RDebugSnap , addr : u64) -> bool ; } extern "C" { pub fn r_debug_snap_get_hash (snap : * mut RDebugSnap) -> * mut u8 ; } extern "C" { pub fn r_debug_snap_is_equal (a : * mut RDebugSnap , b : * mut RDebugSnap) -> bool ; } extern "C" { pub fn r_debug_snap_free (snap : * mut RDebugSnap) ; } extern "C" { pub fn r_debug_snap_delete (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_list (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_snap_diff (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap (dbg : * mut RDebug , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_comment (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , msg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_all (dbg : * mut RDebug , perms : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step_back (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_goto_cnum (dbg : * mut RDebug , cnum : u32) -> bool ; } extern "C" { pub fn r_debug_step_cnum (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_back (dbg : * mut RDebug) -> bool ; } pub const r_vc_type_t_RVC_TYPE_RVC : r_vc_type_t = 0 ; pub const r_vc_type_t_RVC_TYPE_GIT : r_vc_type_t = 1 ; pub const r_vc_type_t_RVC_TYPE_ANY : r_vc_type_t = 2 ; pub const r_vc_type_t_RVC_TYPE_INV : r_vc_type_t = 3 ; pub type r_vc_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_vc_type_t as RvcType ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vc_t { pub path : * mut :: std :: os :: raw :: c_char , pub db : * mut Sdb , pub p : * const rvc_plugin_t , } # [test] fn bindgen_test_layout_r_vc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vc_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_vc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_vc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (p))) ; } impl Default for r_vc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type Rvc = r_vc_t ; pub type RvcPluginBranch = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , bname : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginCommit = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , message : * const :: std :: os :: raw :: c_char , author : * const :: std :: os :: raw :: c_char , files : * const RList) -> bool > ; pub type RvcPluginCheckout = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , bname : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginBranches = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut RList > ; pub type RvcPluginClose = :: std :: option :: Option < unsafe extern "C" fn (vc : * mut r_vc_t , save : bool) > ; pub type RvcPluginCurrentBranch = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut :: std :: os :: raw :: c_char > ; pub type RvcPluginPrintCommits = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> bool > ; pub type RvcPluginUncommited = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut RList > ; pub type RvcPluginReset = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> bool > ; pub type RvcPluginClone = :: std :: option :: Option < unsafe extern "C" fn (rvc : * const r_vc_t , dst : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginSave = :: std :: option :: Option < unsafe extern "C" fn (vc : * mut r_vc_t) -> bool > ; pub type RvcPluginOpen = :: std :: option :: Option < unsafe extern "C" fn (path : * const :: std :: os :: raw :: c_char) -> * mut Rvc > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rvc_plugin_t { pub name : * const :: std :: os :: raw :: c_char , pub author : * const :: std :: os :: raw :: c_char , pub desc : * const :: std :: os :: raw :: c_char , pub license : * const :: std :: os :: raw :: c_char , pub type_ : RvcType , pub commit : RvcPluginCommit , pub checkout : RvcPluginCheckout , pub branch : RvcPluginBranch , pub branches : RvcPluginBranches , pub curbranch : RvcPluginCurrentBranch , pub uncommited : RvcPluginUncommited , pub log : RvcPluginPrintCommits , pub reset : RvcPluginReset , pub clone : RvcPluginClone , pub close : RvcPluginClose , pub save : RvcPluginSave , pub open : RvcPluginOpen , } # [test] fn bindgen_test_layout_rvc_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < rvc_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < rvc_plugin_t > () , 136usize , concat ! ("Size of: " , stringify ! (rvc_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < rvc_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (rvc_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . author) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (author))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . license) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (license))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commit) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (commit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . checkout) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (checkout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branch) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (branch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branches) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (branches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curbranch) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (curbranch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uncommited) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (uncommited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clone) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (clone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . save) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (save))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (open))) ; } impl Default for rvc_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_vc_new (path : * const :: std :: os :: raw :: c_char) -> * mut Rvc ; } extern "C" { pub fn r_vc_checkout (rvc : * mut Rvc , bname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_vc_get_uncommitted (rvc : * mut Rvc) -> * mut RList ; } extern "C" { pub fn r_vc_log (rvc : * mut Rvc) -> bool ; } extern "C" { pub fn r_vc_current_branch (rvc : * mut Rvc) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_vc_reset (rvc : * mut Rvc) -> bool ; } extern "C" { pub fn r_vc_clone (rvc : * const Rvc , dst : * const :: std :: os :: raw :: c_char) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_t { pub h : * mut r_muta_plugin_t , pub bigendian : bool , pub user : * mut :: std :: os :: raw :: c_void , pub plugins : * mut RList , } # [test] fn bindgen_test_layout_r_muta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_muta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bigendian) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (bigendian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (plugins))) ; } impl Default for r_muta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMuta = r_muta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_session_t { pub h : * mut r_muta_plugin_t , pub c : * mut r_muta_t , pub flag : :: std :: os :: raw :: c_int , pub key : * mut u8 , pub iv : * mut u8 , pub key_len : :: std :: os :: raw :: c_int , pub output : * mut u8 , pub output_len : :: std :: os :: raw :: c_int , pub output_size : :: std :: os :: raw :: c_int , pub dir : :: std :: os :: raw :: c_int , pub plugins : * mut RList , pub sm4_sk : [u32 ; 32usize] , pub data : * mut :: std :: os :: raw :: c_void , pub cps2key : [u32 ; 2usize] , pub rot_key : u8 , pub entropy : f64 , } # [test] fn bindgen_test_layout_r_muta_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_session_t > () , 240usize , concat ! ("Size of: " , stringify ! (r_muta_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iv) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key_len) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output_len) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output_size) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sm4_sk) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (sm4_sk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cps2key) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (cps2key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rot_key) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (rot_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entropy) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (entropy))) ; } impl Default for r_muta_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMutaSession = r_muta_session_t ; pub const RMutaType_R_MUTA_TYPE_HASH : RMutaType = 0 ; pub const RMutaType_R_MUTA_TYPE_BASE : RMutaType = 1 ; pub const RMutaType_R_MUTA_TYPE_CRYPTO : RMutaType = 2 ; pub const RMutaType_R_MUTA_TYPE_SIGN : RMutaType = 3 ; pub const RMutaType_R_MUTA_TYPE_CHARSET : RMutaType = 4 ; pub const RMutaType_R_MUTA_TYPE_ALL : RMutaType = - 1 ; pub type RMutaType = :: std :: os :: raw :: c_int ; pub type RMutaSessionSetIVCallback = :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , iv : * const u8 , ivlen : :: std :: os :: raw :: c_int) -> bool > ; pub type RMutaSessionUpdateCallback = :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_plugin_t { pub meta : RPluginMeta , pub implements : * const :: std :: os :: raw :: c_char , pub type_ : RMutaType , pub check : :: std :: option :: Option < unsafe extern "C" fn (algo : * const :: std :: os :: raw :: c_char) -> bool > , pub get_key_size : :: std :: option :: Option < unsafe extern "C" fn (cry : * mut RMutaSession) -> :: std :: os :: raw :: c_int > , pub set_iv : RMutaSessionSetIVCallback , pub set_key : :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , key : * const u8 , keylen : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , direction : :: std :: os :: raw :: c_int) -> bool > , pub begin : :: std :: option :: Option < unsafe extern "C" fn (cry : * mut RMuta) -> * mut RMutaSession > , pub update : RMutaSessionUpdateCallback , pub end : :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (cj : * mut RMutaSession) -> bool > , } # [test] fn bindgen_test_layout_r_muta_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_plugin_t > () , 144usize , concat ! ("Size of: " , stringify ! (r_muta_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . implements) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (implements))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_key_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (get_key_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_iv) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (set_iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_key) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (set_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . begin) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (fini))) ; } impl Default for r_muta_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMutaPlugin = r_muta_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RMutaOptions { pub iv : * mut u8 , pub key : * mut u8 , pub key_len : usize , pub direction : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RMutaOptions () { const UNINIT : :: std :: mem :: MaybeUninit < RMutaOptions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RMutaOptions > () , 32usize , concat ! ("Size of: " , stringify ! (RMutaOptions))) ; assert_eq ! (:: std :: mem :: align_of :: < RMutaOptions > () , 8usize , concat ! ("Alignment of " , stringify ! (RMutaOptions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iv) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key_len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (direction))) ; } impl Default for RMutaOptions { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_muta_init (cry : * mut RMuta) ; } extern "C" { pub fn r_muta_add (cry : * mut RMuta , h : * mut RMutaPlugin) -> bool ; } extern "C" { pub fn r_muta_new () -> * mut RMuta ; } extern "C" { pub fn r_muta_free (cry : * mut RMuta) ; } extern "C" { pub fn r_muta_list (cry : * mut RMuta , type_ : RMutaType , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_muta_use (cry : * mut RMuta , algo : * const :: std :: os :: raw :: c_char) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_set_key (cry : * mut RMutaSession , key : * const u8 , keylen : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , direction : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_set_iv (cry : * mut RMutaSession , iv : * const u8 , ivlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_new_session (mu : * mut RMuta , algo : * const :: std :: os :: raw :: c_char , opt : * mut RMutaOptions) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_new (cry : * mut RMuta , cp : * mut RMutaPlugin) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_free (cj : * mut RMutaSession) ; } extern "C" { pub fn r_muta_begin (cry : * mut RMuta) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_update (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_end (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_append (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_muta_session_get_output (cry : * mut RMutaSession , size : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } pub const RCoreVisualMode_R_CORE_VISUAL_MODE_PX : RCoreVisualMode = 0 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_PD : RCoreVisualMode = 1 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_DB : RCoreVisualMode = 2 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_OV : RCoreVisualMode = 3 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_CD : RCoreVisualMode = 4 ; pub type RCoreVisualMode = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_plugin_session_t { pub core : * mut RCore , pub plugin : * mut r_core_plugin_t , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_core_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_core_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (data))) ; } impl Default for r_core_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCorePluginSession = r_core_plugin_session_t ; pub type RCorePluginLife = :: std :: option :: Option < unsafe extern "C" fn (ctx : * mut RCorePluginSession) -> bool > ; pub type RCorePluginCall = :: std :: option :: Option < unsafe extern "C" fn (ctx : * mut RCorePluginSession , input : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_plugin_t { pub meta : RPluginMeta , pub init : RCorePluginLife , pub fini : RCorePluginLife , pub call : RCorePluginCall , } # [test] fn bindgen_test_layout_r_core_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_core_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (call))) ; } impl Default for r_core_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCorePlugin = r_core_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_rtr_host_t { pub proto : :: std :: os :: raw :: c_int , pub host : [:: std :: os :: raw :: c_char ; 512usize] , pub port : :: std :: os :: raw :: c_int , pub file : [:: std :: os :: raw :: c_char ; 1024usize] , pub fd : * mut RSocket , } # [test] fn bindgen_test_layout_r_core_rtr_host_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_rtr_host_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_rtr_host_t > () , 1552usize , concat ! ("Size of: " , stringify ! (r_core_rtr_host_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_rtr_host_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_rtr_host_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . proto) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . host) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 1544usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (fd))) ; } impl Default for r_core_rtr_host_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreRtrHost = r_core_rtr_host_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_undo_t { pub action : * mut :: std :: os :: raw :: c_char , pub revert : * mut :: std :: os :: raw :: c_char , pub tstamp : u64 , pub addr : u64 , } # [test] fn bindgen_test_layout_r_core_undo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_undo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_undo_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_undo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_undo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_undo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . action) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revert) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (revert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tstamp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (tstamp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (addr))) ; } impl Default for r_core_undo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreUndo = r_core_undo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreUndoCondition { pub addr : u64 , pub glob : * const :: std :: os :: raw :: c_char , pub minstamp : u64 , } # [test] fn bindgen_test_layout_RCoreUndoCondition () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreUndoCondition > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreUndoCondition > () , 24usize , concat ! ("Size of: " , stringify ! (RCoreUndoCondition))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreUndoCondition > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreUndoCondition))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (glob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstamp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (minstamp))) ; } impl Default for RCoreUndoCondition { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_log_t { pub first : :: std :: os :: raw :: c_int , pub last : :: std :: os :: raw :: c_int , pub sp : * mut RStrpool , } # [test] fn bindgen_test_layout_r_core_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_core_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (sp))) ; } impl Default for r_core_log_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreLog = r_core_log_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_core_times_t { pub loadlibs_init_time : u64 , pub loadlibs_time : u64 , pub file_open_time : u64 , pub file_anal_time : u64 , } # [test] fn bindgen_test_layout_r_core_times_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_times_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_times_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_times_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_times_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_times_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadlibs_init_time) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (loadlibs_init_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadlibs_time) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (loadlibs_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_open_time) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (file_open_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_anal_time) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (file_anal_time))) ; } pub type RCoreTimes = r_core_times_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_autocomplete_t { pub cmd : * mut :: std :: os :: raw :: c_char , pub length : :: std :: os :: raw :: c_int , pub n_subcmds : :: std :: os :: raw :: c_int , pub locked : bool , pub type_ : :: std :: os :: raw :: c_int , pub subcmds : * mut * mut r_core_autocomplete_t , } # [test] fn bindgen_test_layout_r_core_autocomplete_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_autocomplete_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_autocomplete_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_autocomplete_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_autocomplete_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_autocomplete_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_subcmds) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (n_subcmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . locked) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (locked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subcmds) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (subcmds))) ; } impl Default for r_core_autocomplete_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreAutocomplete = r_core_autocomplete_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_visual_t { pub printidx : RCoreVisualMode , pub tabs : * mut RList , pub tab : :: std :: os :: raw :: c_int , pub textedit_mode : bool , pub obs : :: std :: os :: raw :: c_int , pub ime : bool , pub imes : bool , pub nib : :: std :: os :: raw :: c_int , pub blocksize : :: std :: os :: raw :: c_int , pub autoblocksize : bool , pub disMode : :: std :: os :: raw :: c_int , pub hexMode : :: std :: os :: raw :: c_int , pub printMode : :: std :: os :: raw :: c_int , pub snowMode : bool , pub snows : * mut RList , pub color : :: std :: os :: raw :: c_int , pub zoom : :: std :: os :: raw :: c_int , pub currentFormat : :: std :: os :: raw :: c_int , pub current0format : :: std :: os :: raw :: c_int , pub numbuf : [:: std :: os :: raw :: c_char ; 32usize] , pub numbuf_i : :: std :: os :: raw :: c_int , pub splitView : bool , pub splitPtr : u64 , pub current3format : :: std :: os :: raw :: c_int , pub current4format : :: std :: os :: raw :: c_int , pub current5format : :: std :: os :: raw :: c_int , pub hold : * mut RConfigHold , pub oldpc : u64 , pub oseek : u64 , pub debugstr : [:: std :: os :: raw :: c_char ; 512usize] , pub firstRun : bool , pub fromVisual : bool , pub fromVmatrix : bool , pub menus_Colors : [* mut :: std :: os :: raw :: c_char ; 128usize] , pub discroll : :: std :: os :: raw :: c_int , pub mousemode : :: std :: os :: raw :: c_int , pub graphCursor : bool , pub coming_from_vmark : bool , } # [test] fn bindgen_test_layout_r_core_visual_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_visual_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_visual_t > () , 1736usize , concat ! ("Size of: " , stringify ! (r_core_visual_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_visual_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_visual_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . printidx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (printidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tabs) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (tabs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tab) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (tab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . textedit_mode) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (textedit_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (obs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ime) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (ime))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imes) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (imes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nib) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (nib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (blocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autoblocksize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (autoblocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disMode) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (disMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hexMode) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (hexMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . printMode) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (printMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snowMode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (snowMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snows) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (snows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . currentFormat) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (currentFormat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current0format) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current0format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numbuf) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (numbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numbuf_i) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (numbuf_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . splitView) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (splitView))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . splitPtr) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (splitPtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current3format) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current3format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current4format) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current4format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current5format) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current5format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hold) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (hold))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldpc) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (oldpc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oseek) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (oseek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debugstr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (debugstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . firstRun) as usize - ptr as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (firstRun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fromVisual) as usize - ptr as usize } , 689usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (fromVisual))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fromVmatrix) as usize - ptr as usize } , 690usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (fromVmatrix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . menus_Colors) as usize - ptr as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (menus_Colors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discroll) as usize - ptr as usize } , 1720usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (discroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mousemode) as usize - ptr as usize } , 1724usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (mousemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graphCursor) as usize - ptr as usize } , 1728usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (graphCursor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coming_from_vmark) as usize - ptr as usize } , 1729usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (coming_from_vmark))) ; } impl Default for r_core_visual_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreVisual = r_core_visual_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreGadget { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub cmd : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RCoreGadget () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreGadget > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreGadget > () , 24usize , concat ! ("Size of: " , stringify ! (RCoreGadget))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreGadget > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreGadget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (cmd))) ; } impl Default for RCoreGadget { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_core_gadget_free (g : * mut RCoreGadget) ; } pub type RCoreTaskCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , out : * mut :: std :: os :: raw :: c_char) > ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_COOP : r_core_task_mode_t = 0 ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_THREAD : r_core_task_mode_t = 1 ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_FORK : r_core_task_mode_t = 2 ; pub type r_core_task_mode_t = :: std :: os :: raw :: c_uint ; pub use self :: r_core_task_mode_t as RCoreTaskMode ; pub const r_core_task_state_t_R_CORE_TASK_STATE_BEFORE_START : r_core_task_state_t = 0 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_RUNNING : r_core_task_state_t = 1 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_SLEEPING : r_core_task_state_t = 2 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_DONE : r_core_task_state_t = 3 ; pub type r_core_task_state_t = :: std :: os :: raw :: c_uint ; pub use self :: r_core_task_state_t as RTaskState ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_task_t { pub id : :: std :: os :: raw :: c_int , pub state : RTaskState , pub transient : bool , pub running_sem : * mut RThreadSemaphore , pub user : * mut :: std :: os :: raw :: c_void , pub core : * mut RCore , pub mode : RCoreTaskMode , pub task_core : * mut RCore , pub thread : * mut RThread , pub pid : :: std :: os :: raw :: c_int , pub dispatched : bool , pub dispatch_cond : * mut RThreadCond , pub dispatch_lock : * mut RThreadLock , pub cmd : * mut :: std :: os :: raw :: c_char , pub res : * mut :: std :: os :: raw :: c_char , pub cmd_log : bool , pub cons_context : * mut RConsContext , pub cb : RCoreTaskCallback , } # [test] fn bindgen_test_layout_r_core_task_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_task_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_task_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_core_task_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_task_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_task_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . transient) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (transient))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_sem) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (running_sem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . task_core) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (task_core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatched) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatched))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatch_cond) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatch_cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatch_lock) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatch_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . res) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_log) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cmd_log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons_context) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cons_context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cb))) ; } impl Default for r_core_task_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreTask = r_core_task_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_tasks_t { pub task_id_next : :: std :: os :: raw :: c_int , pub tasks : * mut RList , pub tasks_queue : * mut RList , pub current_task : * mut r_core_task_t , pub main_task : * mut r_core_task_t , pub lock : * mut RThreadLock , pub tasks_running : :: std :: os :: raw :: c_int , pub foreground_task : * mut r_core_task_t , pub default_mode : RCoreTaskMode , pub main_core : * mut RCore , } # [test] fn bindgen_test_layout_r_core_tasks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_tasks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_tasks_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_core_tasks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_tasks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_tasks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . task_id_next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (task_id_next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks_queue) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks_queue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_task) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (current_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_task) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (main_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks_running) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks_running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foreground_task) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (foreground_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_mode) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (default_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_core) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (main_core))) ; } impl Default for r_core_tasks_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreTaskScheduler = r_core_tasks_t ; extern "C" { pub fn r_core_task_scheduler_init (tasks : * mut RCoreTaskScheduler , core : * mut RCore) ; } extern "C" { pub fn r_core_task_scheduler_fini (tasks : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_get (scheduler : * mut RCoreTaskScheduler , id : :: std :: os :: raw :: c_int) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_running_tasks_count (scheduler : * mut RCoreTaskScheduler) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_status (task : * mut RCoreTask) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_task_new (core : * mut RCore , mode : RCoreTaskMode , create_cons : bool , cmd : * const :: std :: os :: raw :: c_char , cb : RCoreTaskCallback , user : * mut :: std :: os :: raw :: c_void) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_enqueue (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_run_sync (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_sync_begin (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_sync_end (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_yield (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_sleep_begin (task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_sleep_end (task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_del (scheduler : * mut RCoreTaskScheduler , id : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_del_all_done (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_self (scheduler : * mut RCoreTaskScheduler) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_join (scheduler : * mut RCoreTaskScheduler , current : * mut RCoreTask , id : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_task_set_foreground (scheduler : * mut RCoreTaskScheduler , task_id : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_task_get_foreground (scheduler : * mut RCoreTaskScheduler) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_set_default_mode (scheduler : * mut RCoreTaskScheduler , mode : RCoreTaskMode) ; } extern "C" { pub fn r_core_task_get_default_mode (scheduler : * mut RCoreTaskScheduler) -> RCoreTaskMode ; } extern "C" { pub fn r_core_task_run (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_run_threaded (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_run_forked (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_submit (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , cb : RCoreTaskCallback , user : * mut :: std :: os :: raw :: c_void , capture_cons : bool , mode : :: std :: os :: raw :: c_int) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_id (t : * const RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_wait (t : * mut RCoreTask , timeout_ms : u64) -> bool ; } extern "C" { pub fn r_core_task_cancel (t : * mut RCoreTask , hard : bool) -> bool ; } extern "C" { pub fn r_core_task_cancel_all (core : * mut RCore , hard : bool) ; } extern "C" { pub fn r_core_task_free (t : * mut RCoreTask) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_project_t { pub name : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub rvc : * mut r_vc_t , } # [test] fn bindgen_test_layout_r_core_project_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_project_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_project_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_core_project_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_project_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_project_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rvc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (rvc))) ; } impl Default for r_core_project_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RProject = r_core_project_t ; extern "C" { pub fn r_project_new () -> * mut RProject ; } extern "C" { pub fn r_core_is_project (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_rename (p : * mut RProject , newname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_is_git (p : * mut RProject) -> bool ; } extern "C" { pub fn r_project_close (p : * mut RProject) ; } extern "C" { pub fn r_project_open (p : * mut RProject , prjname : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_save (p : * mut RProject) ; } extern "C" { pub fn r_project_free (p : * mut RProject) ; } extern "C" { pub fn r_project_is_loaded (p : * mut RProject) -> bool ; } extern "C" { pub fn r_core_project_is_dirty (core : * mut RCore) -> bool ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct VisualMark { pub addr : u64 , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_VisualMark () { const UNINIT : :: std :: mem :: MaybeUninit < VisualMark > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < VisualMark > () , 16usize , concat ! ("Size of: " , stringify ! (VisualMark))) ; assert_eq ! (:: std :: mem :: align_of :: < VisualMark > () , 8usize , concat ! ("Alignment of " , stringify ! (VisualMark))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (y))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct r_core_esil_t { pub esil : REsil , pub __bindgen_anon_1 : r_core_esil_t__bindgen_ty_1 , pub tr_reg : u32 , pub tr_mem : u32 , pub reg : * mut RReg , pub cmd_step : * mut :: std :: os :: raw :: c_char , pub cmd_step_out : * mut :: std :: os :: raw :: c_char , pub cmd_intr : * mut :: std :: os :: raw :: c_char , pub cmd_trap : * mut :: std :: os :: raw :: c_char , pub cmd_mdev : * mut :: std :: os :: raw :: c_char , pub cmd_todo : * mut :: std :: os :: raw :: c_char , pub cmd_ioer : * mut :: std :: os :: raw :: c_char , pub mdev_range : * mut :: std :: os :: raw :: c_char , pub cfg : u8 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_core_esil_t__bindgen_ty_1 { pub trap_revert : RStrBuf , pub old_pc : u64 , } # [test] fn bindgen_test_layout_r_core_esil_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_esil_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_esil_t__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (r_core_esil_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_esil_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_esil_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap_revert) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t__bindgen_ty_1) , "::" , stringify ! (trap_revert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t__bindgen_ty_1) , "::" , stringify ! (old_pc))) ; } impl Default for r_core_esil_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_core_esil_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_esil_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_esil_t > () , 832usize , concat ! ("Size of: " , stringify ! (r_core_esil_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_esil_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_esil_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tr_reg) as usize - ptr as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (tr_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tr_mem) as usize - ptr as usize } , 748usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (tr_mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step_out) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_step_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_intr) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_intr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_trap) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_mdev) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_mdev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_todo) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_ioer) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_ioer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mdev_range) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (mdev_range))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cfg))) ; } impl Default for r_core_esil_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreEsil = r_core_esil_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_core_t { pub bin : * mut RBin , pub config : * mut RConfig , pub prj : * mut RProject , pub addr : u64 , pub prompt_addr : u64 , pub blocksize : u32 , pub blocksize_max : u32 , pub block : * mut u8 , pub yank_buf : * mut RBuffer , pub yank_addr : u64 , pub tmpseek : bool , pub vmode : bool , pub cons : * mut RCons , pub muta : * mut RMuta , pub io : * mut RIO , pub num : * mut RNum , pub rc : u64 , pub lib : * mut RLib , pub rcmd : * mut RCmd , pub anal : * mut RAnal , pub rasm : * mut RAsm , pub esil : RCoreEsil , pub times : * mut RCoreTimes , pub print : * mut RPrint , pub lang : * mut RLang , pub dbg : * mut RDebug , pub flags : * mut RFlag , pub search : * mut RSearch , pub fs : * mut RFS , pub rfs : * mut RFSShell , pub egg : * mut REgg , pub log : * mut RCoreLog , pub graph : * mut RAGraph , pub panels_root : * mut RPanelsRoot , pub panels : * mut RPanels , pub cmdqueue : * mut RList , pub magic : * mut magic_set , pub lastcmd : * mut :: std :: os :: raw :: c_char , pub cmdlog : * mut :: std :: os :: raw :: c_char , pub cfglog : bool , pub cmdrepeat : :: std :: os :: raw :: c_int , pub cmdtimes : * const :: std :: os :: raw :: c_char , pub rtr_n : :: std :: os :: raw :: c_int , pub rtr_host : [RCoreRtrHost ; 255usize] , pub asmqjmps : * mut u64 , pub asmqjmps_count : :: std :: os :: raw :: c_int , pub asmqjmps_size : :: std :: os :: raw :: c_int , pub get_next : bool , pub is_asmqjmps_letter : bool , pub keep_asmqjmps : bool , pub visual : RCoreVisual , pub http_up : bool , pub gdbserver_up : bool , pub stkcmd : * mut :: std :: os :: raw :: c_char , pub in_search : bool , pub watchers : * mut RList , pub scriptstack : * mut RList , pub tasks : RCoreTaskScheduler , pub max_cmd_depth : :: std :: os :: raw :: c_int , pub cur_cmd_depth : :: std :: os :: raw :: c_int , pub switch_file_view : u8 , pub sdb : * mut Sdb , pub incomment : :: std :: os :: raw :: c_int , pub curtab : :: std :: os :: raw :: c_int , pub seltab : :: std :: os :: raw :: c_int , pub cmdremote : * mut :: std :: os :: raw :: c_char , pub lastsearch : * mut :: std :: os :: raw :: c_char , pub cmdfilter : * mut :: std :: os :: raw :: c_char , pub break_loop : bool , pub undos : * mut RList , pub undoindex : :: std :: os :: raw :: c_int , pub binat : bool , pub fixedbits : bool , pub fixedarch : bool , pub fixedblock : bool , pub table_query : * mut :: std :: os :: raw :: c_char , pub sync_index : :: std :: os :: raw :: c_int , pub c2 : * mut r_core_t , pub table : * mut RTable , pub autocomplete : * mut RCoreAutocomplete , pub autocomplete_type : :: std :: os :: raw :: c_int , pub maxtab : :: std :: os :: raw :: c_int , pub ev : * mut REvent , pub gadgets : * mut RList , pub scr_gadgets : bool , pub log_events : bool , pub ropchain : * mut RList , pub theme : * mut :: std :: os :: raw :: c_char , pub themepath : * mut :: std :: os :: raw :: c_char , pub allbins : bool , pub marks : [VisualMark ; 256usize] , pub chan : * mut RThreadChannel , pub lock : * mut RThreadLock , pub in_log_process : bool , pub r_main_radare2 : RMainCallback , pub r_main_rafind2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_ravc2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_r2pm : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_radiff2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rafs2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rabin2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rarun2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_ragg2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rasm2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rax2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub skiplines : :: std :: os :: raw :: c_int , pub priv_ : * mut :: std :: os :: raw :: c_void , pub esil_anal_stop : bool , } # [test] fn bindgen_test_layout_r_core_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_t > () , 403208usize , concat ! ("Size of: " , stringify ! (r_core_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prj) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (prj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (prompt_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (blocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize_max) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (blocksize_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . yank_buf) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (yank_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . yank_addr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (yank_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmpseek) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (tmpseek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vmode) as usize - ptr as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (vmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muta) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (muta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rc) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lib) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcmd) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . times) as usize - ptr as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (times))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print) as usize - ptr as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (print))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg) as usize - ptr as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . search) as usize - ptr as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fs) as usize - ptr as usize } , 1032usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rfs) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rfs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . egg) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (egg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels_root) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (panels_root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels) as usize - ptr as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdqueue) as usize - ptr as usize } , 1088usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdqueue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . magic) as usize - ptr as usize } , 1096usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastcmd) as usize - ptr as usize } , 1104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lastcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdlog) as usize - ptr as usize } , 1112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdlog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfglog) as usize - ptr as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cfglog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdrepeat) as usize - ptr as usize } , 1124usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdrepeat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdtimes) as usize - ptr as usize } , 1128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdtimes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtr_n) as usize - ptr as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rtr_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtr_host) as usize - ptr as usize } , 1144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rtr_host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps) as usize - ptr as usize } , 396904usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps_count) as usize - ptr as usize } , 396912usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps_size) as usize - ptr as usize } , 396916usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_next) as usize - ptr as usize } , 396920usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (get_next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_asmqjmps_letter) as usize - ptr as usize } , 396921usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (is_asmqjmps_letter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keep_asmqjmps) as usize - ptr as usize } , 396922usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (keep_asmqjmps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visual) as usize - ptr as usize } , 396928usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (visual))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . http_up) as usize - ptr as usize } , 398664usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (http_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdbserver_up) as usize - ptr as usize } , 398665usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (gdbserver_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stkcmd) as usize - ptr as usize } , 398672usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (stkcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_search) as usize - ptr as usize } , 398680usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (in_search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchers) as usize - ptr as usize } , 398688usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (watchers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scriptstack) as usize - ptr as usize } , 398696usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (scriptstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks) as usize - ptr as usize } , 398704usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_cmd_depth) as usize - ptr as usize } , 398784usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (max_cmd_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_cmd_depth) as usize - ptr as usize } , 398788usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cur_cmd_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_file_view) as usize - ptr as usize } , 398792usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (switch_file_view))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 398800usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . incomment) as usize - ptr as usize } , 398808usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (incomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curtab) as usize - ptr as usize } , 398812usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (curtab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seltab) as usize - ptr as usize } , 398816usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (seltab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdremote) as usize - ptr as usize } , 398824usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdremote))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastsearch) as usize - ptr as usize } , 398832usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lastsearch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdfilter) as usize - ptr as usize } , 398840usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_loop) as usize - ptr as usize } , 398848usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (break_loop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undos) as usize - ptr as usize } , 398856usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (undos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undoindex) as usize - ptr as usize } , 398864usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (undoindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binat) as usize - ptr as usize } , 398868usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (binat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedbits) as usize - ptr as usize } , 398869usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedarch) as usize - ptr as usize } , 398870usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedarch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedblock) as usize - ptr as usize } , 398871usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedblock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table_query) as usize - ptr as usize } , 398872usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (table_query))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sync_index) as usize - ptr as usize } , 398880usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (sync_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c2) as usize - ptr as usize } , 398888usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (c2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 398896usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autocomplete) as usize - ptr as usize } , 398904usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (autocomplete))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autocomplete_type) as usize - ptr as usize } , 398912usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (autocomplete_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxtab) as usize - ptr as usize } , 398916usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (maxtab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 398920usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gadgets) as usize - ptr as usize } , 398928usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (gadgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scr_gadgets) as usize - ptr as usize } , 398936usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (scr_gadgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log_events) as usize - ptr as usize } , 398937usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (log_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ropchain) as usize - ptr as usize } , 398944usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (ropchain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . theme) as usize - ptr as usize } , 398952usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (theme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . themepath) as usize - ptr as usize } , 398960usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (themepath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allbins) as usize - ptr as usize } , 398968usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (allbins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . marks) as usize - ptr as usize } , 398976usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (marks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chan) as usize - ptr as usize } , 403072usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (chan))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 403080usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_log_process) as usize - ptr as usize } , 403088usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (in_log_process))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_radare2) as usize - ptr as usize } , 403096usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_radare2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rafind2) as usize - ptr as usize } , 403104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rafind2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_ravc2) as usize - ptr as usize } , 403112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_ravc2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_r2pm) as usize - ptr as usize } , 403120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_r2pm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_radiff2) as usize - ptr as usize } , 403128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_radiff2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rafs2) as usize - ptr as usize } , 403136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rafs2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rabin2) as usize - ptr as usize } , 403144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rabin2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rarun2) as usize - ptr as usize } , 403152usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rarun2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_ragg2) as usize - ptr as usize } , 403160usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_ragg2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rasm2) as usize - ptr as usize } , 403168usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rasm2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rax2) as usize - ptr as usize } , 403176usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rax2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skiplines) as usize - ptr as usize } , 403184usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (skiplines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 403192usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (priv_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil_anal_stop) as usize - ptr as usize } , 403200usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (esil_anal_stop))) ; } impl Default for r_core_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_item_t { pub type_ : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub next : u64 , pub prev : u64 , pub size : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub data : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub sectname : * mut :: std :: os :: raw :: c_char , pub fcnname : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_core_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_core_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sectname) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (sectname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcnname) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (fcnname))) ; } impl Default for r_core_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreItem = r_core_item_t ; extern "C" { pub fn r_core_item_at (core : * mut RCore , addr : u64) -> * mut RCoreItem ; } extern "C" { pub fn r_core_item_free (ci : * mut RCoreItem) ; } extern "C" { pub fn r_core_bind (core : * mut RCore , bnd : * mut RCoreBind) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_cmpwatch_t { pub addr : u64 , pub size : :: std :: os :: raw :: c_int , pub cmd : * mut :: std :: os :: raw :: c_char , pub odata : * mut u8 , pub ndata : * mut u8 , } # [test] fn bindgen_test_layout_r_core_cmpwatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_cmpwatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_cmpwatch_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_core_cmpwatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_cmpwatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_cmpwatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . odata) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (odata))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndata) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (ndata))) ; } impl Default for r_core_cmpwatch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreCmpWatcher = r_core_cmpwatch_t ; pub type RCoreSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , from : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_core_list_themes (core : * mut RCore) -> * mut RList ; } extern "C" { pub fn r_core_get_theme (core : * mut RCore) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_reloff (core : * mut RCore , type_ : :: std :: os :: raw :: c_int , at : u64 , delta : * mut i64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_section_name (core : * mut RCore , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_cons (core : * mut RCore) -> * mut RCons ; } extern "C" { pub fn r_core_get_bin (core : * mut RCore) -> * mut RBin ; } extern "C" { pub fn r_core_get_config (core : * mut RCore) -> * mut RConfig ; } extern "C" { pub fn r_core_init (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_bind_cons (core : * mut RCore) ; } extern "C" { pub fn r_core_new () -> * mut RCore ; } extern "C" { pub fn r_core_free (core : * mut RCore) ; } extern "C" { pub fn r_core_fini (c : * mut RCore) ; } extern "C" { pub fn r_core_wait (core : * mut RCore) ; } extern "C" { pub fn r_core_ncast (p : u64) -> * mut RCore ; } extern "C" { pub fn r_core_cast (p : * mut :: std :: os :: raw :: c_void) -> * mut RCore ; } extern "C" { pub fn r_core_bin_load_structs (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_config_init (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_config_update (core : * mut RCore) ; } extern "C" { pub fn r_core_parse_radare2rc (r : * mut RCore) ; } extern "C" { pub fn r_core_prompt (core : * mut RCore , sync : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_prompt_exec (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_lines_initcache (core : * mut RCore , start_addr : u64 , end_addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_lines_currline (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_prompt_loop (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_pava (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_cmd (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_task_sync (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_editor (core : * const RCore , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_fgets (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_flag_get_by_spaces (f : * mut RFlag , prionospace : bool , off : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_core_cmdf (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmdf_at (core : * mut RCore , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd0 (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_r (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_queue (core : * mut RCore , line : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_queue_wait (core : * mut RCore) ; } extern "C" { pub fn r_core_cmd_init (core : * mut RCore) ; } extern "C" { pub fn r_core_cmd_str_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_call_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_call_str_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_call (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_callf (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_pipe (core : * mut RCore , radare_cmd : * mut :: std :: os :: raw :: c_char , shell_cmd : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_str (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_str_r (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_strf (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_strf_at (core : * mut RCore , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_str_pipe (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_tobuf (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_core_cmd_file (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_lines (core : * mut RCore , lines : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_command (core : * mut RCore , command : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_af (core : * mut RCore , addr : u64 , name : * const :: std :: os :: raw :: c_char , anal_calls : bool) ; } extern "C" { pub fn r_core_run_script (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_seek (core : * mut RCore , addr : u64 , rb : bool) -> bool ; } extern "C" { pub fn r_core_visual_bit_editor (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_seek_base (core : * mut RCore , hex : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_previous (core : * mut RCore , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_seek_next (core : * mut RCore , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_seek_align (core : * mut RCore , align : u64 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_arch_bits_at (core : * mut RCore , addr : u64 , bits : * mut :: std :: os :: raw :: c_int , arch : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_prompt_format_help (core : * mut RCore) ; } extern "C" { pub fn r_core_prompt_format (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_seek_arch_bits (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_readblock (core : * mut RCore , size : u64) -> * mut u8 ; } extern "C" { pub fn r_core_block_read (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_block_size (core : * mut RCore , bsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_size (core : * mut RCore , addr : u64 , bsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_shift_block (core : * mut RCore , addr : u64 , b_size : u64 , dist : i64) -> bool ; } extern "C" { pub fn r_core_autocomplete (core : * mut RCore , completion : * mut RLineCompletion , buf : * mut RLineBuffer , prompt_type : RLinePromptType) ; } extern "C" { pub fn r_core_print_scrollbar (core : * mut RCore) ; } extern "C" { pub fn r_core_print_scrollbar_bottom (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_prompt_input (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_toggle_decompiler_disasm (core : * mut RCore , for_graph : bool , reset : bool) ; } extern "C" { pub fn r_core_visual_applyDisMode (core : * mut RCore , disMode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_applyHexMode (core : * mut RCore , hexMode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_refs (core : * mut RCore , xref : bool , fcnInsteadOfAddr : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_append_help (core : * mut RCore , p : * mut RStrBuf , title : * const :: std :: os :: raw :: c_char , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_prevop_addr (core : * mut RCore , start_addr : u64 , numinstrs : :: std :: os :: raw :: c_int , prev_addr : * mut u64) -> bool ; } extern "C" { pub fn r_core_prevop_addr_force (core : * mut RCore , start_addr : u64 , numinstrs : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_core_visual_hudstuff (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_visual_classes (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_anal_classes (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_types (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_find (core : * mut RCore , g : * mut RAGraph) ; } extern "C" { pub fn r_core_visual_graph (core : * mut RCore , g : * mut RAGraph , _fcn : * mut RAnalFunction , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_visual_browse (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_cmd (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_seek_animation (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_visual_asm (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_visual_colors (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_xrefs_x (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_xrefs_X (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_showcursor (core : * mut RCore , x : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_offset (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_hud (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_visual_jump (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_visual_disasm_up (core : * mut RCore , cols : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_disasm_down (core : * mut RCore , op : * mut RAnalOp , cols : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_getreloc (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int) -> * mut RBinReloc ; } extern "C" { pub fn r_core_get_asmqjmps (core : * mut RCore , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_core_set_asmqjmps (core : * mut RCore , str_ : * mut :: std :: os :: raw :: c_char , len : usize , i : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_add_asmqjmp (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_panels_root (core : * mut RCore , panels_root : * mut RPanelsRoot) -> bool ; } extern "C" { pub fn r_core_panels_save (core : * mut RCore , _name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_panels_load (core : * mut RCore , _name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_anal_type_init (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_hasrefs_to_depth (core : * mut RCore , value : u64 , pj : * mut PJ , depth : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_link_stroff (core : * mut RCore , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_core_anal_inflags (core : * mut RCore , glob : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_anal_cc_init (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_paths (core : * mut RCore , from : u64 , to : u64 , followCalls : bool , followDepth : :: std :: os :: raw :: c_int , is_json : bool) ; } extern "C" { pub fn r_core_anal_esil_function (core : * mut RCore , addr : u64) ; } extern "C" { # [doc = " TODO: better name and move to anal"] pub fn r_core_list_io (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_list_lang (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_slides (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_vmark (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_vmark_set (core : * mut RCore , ch : u8 , addr : u64 , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_vmark_seek (core : * mut RCore , ch : u8 , g : * mut RAGraph) ; } extern "C" { pub fn r_core_vmark_del (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_vmark_dump (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_vmark_reset (core : * mut RCore) ; } extern "C" { pub fn r_core_search_cb (core : * mut RCore , from : u64 , to : u64 , cb : RCoreSearchCallback) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_serve (core : * mut RCore , fd : * mut RIODesc) -> bool ; } extern "C" { pub fn r_core_file_reopen (core : * mut RCore , args : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , binload : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_file_reopen_debug (core : * mut RCore , args : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_file_reopen_remote_debug (core : * mut RCore , uri : * mut :: std :: os :: raw :: c_char , addr : u64) ; } extern "C" { pub fn r_core_file_open (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , loadaddr : u64) -> * mut RIODesc ; } extern "C" { pub fn r_core_file_open_many (r : * mut RCore , file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , loadaddr : u64) -> * mut RIODesc ; } extern "C" { pub fn r_core_file_close_all_but (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_slurp (core : * mut RCore , path : * const :: std :: os :: raw :: c_char , len : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_setup_debugger (r : * mut RCore , debugbackend : * const :: std :: os :: raw :: c_char , attach : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_delta (core : * mut RCore , addr : i64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_extend_at (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_write_at (core : * mut RCore , addr : u64 , buf : * const u8 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_write_op (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , op : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_transform_op (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , op : :: std :: os :: raw :: c_char) -> * mut u8 ; } extern "C" { pub fn r_core_set_file_by_fd (core : * mut RCore , bin_fd : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_set_file_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_debug_rr (core : * mut RCore , reg : * mut RReg , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_fortune_types () -> * mut RList ; } extern "C" { pub fn r_core_fortune_list (core : * mut RCore , types : bool) ; } extern "C" { pub fn r_core_fortune_print_random (core : * mut RCore) ; } extern "C" { pub fn r_core_yank (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_unset (core : * mut RCore) ; } extern "C" { pub fn r_core_yank_string (core : * mut RCore , addr : u64 , maxlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_hexpair (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_paste (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_set (core : * mut RCore , addr : u64 , buf : * const u8 , len : u32) -> bool ; } extern "C" { pub fn r_core_yank_set_str (core : * mut RCore , addr : u64 , buf : * const :: std :: os :: raw :: c_char , len : u32) -> bool ; } extern "C" { pub fn r_core_yank_to (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_dump (core : * mut RCore , pos : u64 , format : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_hexdump (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_cat (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_cat_string (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_hud_file (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_hud_path (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , dir : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_file_ex (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_file_all (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_loadlibs_init (core : * mut RCore) ; } extern "C" { pub fn r_core_loadlibs (core : * mut RCore , where_ : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_buffer (core : * mut RCore , buf : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_foreach (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , each : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_foreach3 (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , each : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_op_str (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_op_anal (core : * mut RCore , addr : u64 , mask : RAnalOpMask) -> * mut RAnalOp ; } extern "C" { pub fn r_core_disassemble_instr (core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_disassemble_bytes (core : * mut RCore , addr : u64 , b : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_func_args (core : * mut RCore , func_name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_core_print_func_args (core : * mut RCore) ; } extern "C" { pub fn r_core_get_stacksz (core : * mut RCore , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_op (core : * mut RCore , addr : u64 , mask : :: std :: os :: raw :: c_int) -> * mut RAnalOp ; } extern "C" { pub fn r_core_anal_esil (core : * mut RCore , str_ : * const :: std :: os :: raw :: c_char , addr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_anal_fcn_merge (core : * mut RCore , addr : u64 , addr2 : u64) ; } extern "C" { pub fn r_core_anal_optype_colorfor (core : * mut RCore , addr : u64 , ch : u8 , verbose : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_address (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_anal_undefine (core : * mut RCore , off : u64) ; } extern "C" { pub fn r_core_anal_hint_print (core : * mut RCore , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_hint_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_search (core : * mut RCore , from : u64 , to : u64 , ref_ : u64 , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_search_xrefs (core : * mut RCore , from : u64 , to : u64 , pj : * mut PJ , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_data (core : * mut RCore , addr : u64 , count : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_datarefs (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_anal_coderefs (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_anal_codexrefs (core : * mut RCore , addr : u64) -> * mut RGraph ; } extern "C" { pub fn r_core_anal_importxrefs (core : * mut RCore) -> * mut RGraph ; } extern "C" { pub fn r_core_anal_callgraph (core : * mut RCore , addr : u64 , fmt : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_refs (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_agraph_print (core : * mut RCore , use_utf : :: std :: os :: raw :: c_int , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_esil_cmd (esil : * mut REsil , cmd : * const :: std :: os :: raw :: c_char , a1 : u64 , a2 : u64) -> bool ; } extern "C" { pub fn r_core_esil_step (core : * mut RCore , until_addr : u64 , until_expr : * const :: std :: os :: raw :: c_char , prev_addr : * mut u64 , stepOver : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_esil_step_back (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_anal_get_bbaddr (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_anal_bb_seek (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_anal_fcn (core : * mut RCore , at : u64 , from : u64 , reftype : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_anal_fcn_autoname (core : * mut RCore , fcn : * mut RAnalFunction , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_autoname_all_fcns (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_autoname_all_golang_fcns (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_fcn_list (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , rad : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_fcn_name (core : * mut RCore , fcn : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_fcn_list_size (core : * mut RCore) -> u64 ; } extern "C" { pub fn r_core_anal_fcn_labels (core : * mut RCore , fcn : * mut RAnalFunction , rad : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_fcn_clean (core : * mut RCore , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_bb_custom (core : * mut RCore , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_graph (core : * mut RCore , addr : u64 , opts : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_anal_graph_fcn (core : * mut RCore , input : * mut :: std :: os :: raw :: c_char , opts : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_graph_to (core : * mut RCore , addr : u64 , n : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_anal_ref_list (core : * mut RCore , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_cycles (core : * mut RCore , ccl : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_anal_fcn_get_calls (core : * mut RCore , fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_core_anal_type_match (core : * mut RCore , fcn : * mut RAnalFunction) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_asm_hit { pub code : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub addr : u64 , pub valid : u8 , } # [test] fn bindgen_test_layout_r_core_asm_hit () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_asm_hit > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_asm_hit > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_asm_hit))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_asm_hit > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_asm_hit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . valid) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (valid))) ; } impl Default for r_core_asm_hit { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreAsmHit = r_core_asm_hit ; extern "C" { pub fn r_core_syscall (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , args : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_core_syscallf (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut RBuffer ; } extern "C" { pub fn r_core_asm_hit_new () -> * mut RCoreAsmHit ; } extern "C" { pub fn r_core_asm_hit_list_new () -> * mut RList ; } extern "C" { pub fn r_core_asm_hit_free (_hit : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_core_set_asm_configs (core : * mut RCore , arch : * mut :: std :: os :: raw :: c_char , bits : u32 , segoff : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_asm_search (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_asm_strsearch (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , from : u64 , to : u64 , maxhits : :: std :: os :: raw :: c_int , regexp : :: std :: os :: raw :: c_int , everyByte : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_asm_bwdisassemble (core : * mut RCore , addr : u64 , n : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_asm_back_disassemble_instr (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int , hit_count : u32 , extra_padding : u32) -> * mut RList ; } extern "C" { pub fn r_core_asm_back_disassemble_byte (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int , hit_count : u32 , extra_padding : u32) -> * mut RList ; } extern "C" { pub fn r_core_asm_bwdis_len (core : * mut RCore , len : * mut :: std :: os :: raw :: c_int , start_addr : * mut u64 , l : u32) -> u32 ; } pub const r_pdu_condition_t_pdu_instruction : r_pdu_condition_t = 0 ; pub const r_pdu_condition_t_pdu_opcode : r_pdu_condition_t = 1 ; pub type r_pdu_condition_t = :: std :: os :: raw :: c_uint ; extern "C" { pub fn r_core_print_disasm (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int , pdu_condition_type : r_pdu_condition_t , pdu_condition : * const :: std :: os :: raw :: c_void , count_bytes : bool , json : bool , pj : * mut PJ , pdf : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_json (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , lines : :: std :: os :: raw :: c_int , pj : * mut PJ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_json_ipi (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , lines : :: std :: os :: raw :: c_int , pj : * mut PJ , pdu_condition : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_instructions_with_buf (core : * mut RCore , address : u64 , buf : * mut u8 , nb_bytes : :: std :: os :: raw :: c_int , nb_opcodes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_instructions (core : * mut RCore , nb_bytes : :: std :: os :: raw :: c_int , nb_opcodes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_all (core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pdi_with_buf (core : * mut RCore , address : u64 , buf : * mut u8 , nb_opcodes : u32 , nb_bytes : u32 , fmt : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pdi (core : * mut RCore , nb_opcodes : :: std :: os :: raw :: c_int , nb_bytes : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pde (core : * mut RCore , nb_opcodes : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_fcn_disasm (p : * mut RPrint , core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int , invbreak : :: std :: os :: raw :: c_int , cbytes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_get_prc_cols (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_flag_in_middle (core : * mut RCore , at : u64 , oplen : :: std :: os :: raw :: c_int , midflags : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_bb_starts_in_middle (core : * mut RCore , at : u64 , oplen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_esil_init (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_esil_fini (cesil : * mut RCoreEsil) ; } extern "C" { pub fn r_core_esil_load_arch (core : * mut RCore) ; } extern "C" { pub fn r_core_esil_unload_arch (core : * mut RCore) ; } extern "C" { pub fn r_core_esil_single_step (core : * mut RCore) ; } extern "C" { pub fn r_core_bin_raise (core : * mut RCore , bfid : u32) -> bool ; } extern "C" { pub fn r_core_bin_set_cur (core : * mut RCore , binfile : * mut RBinFile) -> bool ; } extern "C" { pub fn r_core_bin_set_env (r : * mut RCore , binfile : * mut RBinFile) -> bool ; } extern "C" { pub fn r_core_bin_set_by_fd (core : * mut RCore , bin_fd : u64) -> bool ; } extern "C" { pub fn r_core_bin_set_by_name (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_bin_load (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , baseaddr : u64) -> bool ; } extern "C" { pub fn r_core_bin_rebase (core : * mut RCore , baddr : u64) -> bool ; } extern "C" { pub fn r_core_bin_export_info (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_bin_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_bin_delete (core : * mut RCore , binfile_idx : u32) -> bool ; } extern "C" { pub fn r_core_bin_impaddr (bin : * mut RBin , va : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_core_pseudo_code (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_zdiff (c : * mut RCore , c2 : * mut RCore) -> bool ; } extern "C" { pub fn r_core_gdiff (core1 : * mut RCore , core2 : * mut RCore) -> bool ; } extern "C" { pub fn r_core_gdiff_fcn (c : * mut RCore , addr : u64 , addr2 : u64) -> bool ; } extern "C" { pub fn r_core_project_execute_cmds (core : * mut RCore , prjfile : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_project_open (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_project_cat (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_project_delete (core : * mut RCore , prjfile : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_project_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_project_save_script (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , opts : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_project_save (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_project_name (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_project_notes_file (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_project_undirty (core : * mut RCore) ; } extern "C" { pub fn r_core_sysenv_begin (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_sysenv_end (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_recover_vars (core : * mut RCore , fcn : * mut RAnalFunction , argonly : bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_bin_filter_t { pub addr : u64 , pub name : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_core_bin_filter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_bin_filter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_bin_filter_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_core_bin_filter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_bin_filter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_bin_filter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_bin_filter_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_bin_filter_t) , "::" , stringify ! (name))) ; } impl Default for r_core_bin_filter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreBinFilter = r_core_bin_filter_t ; extern "C" { pub fn r_core_bin_info (core : * mut RCore , action : :: std :: os :: raw :: c_int , pj : * mut PJ , mode : :: std :: os :: raw :: c_int , va : :: std :: os :: raw :: c_int , filter : * mut RCoreBinFilter , chksum : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_bin_set_arch_bits (r : * mut RCore , name : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , bits : RSysBits) -> bool ; } extern "C" { pub fn r_core_bin_update_arch_bits (r : * mut RCore) -> bool ; } extern "C" { pub fn r_core_bin_attr_tostring (core : * mut RCore , flags : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_pdb_info (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , pj : * mut PJ , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_rtr_cmds (core : * mut RCore , port : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_rtr_cmds_query (core : * mut RCore , host : * const :: std :: os :: raw :: c_char , port : * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_rtr_help (core : * mut RCore) ; } extern "C" { pub fn r_core_rtr_pushout (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_rtr_add (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_remove (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_session (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_event (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_cmd (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_http (core : * mut RCore , launch : :: std :: os :: raw :: c_int , browse : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_rtr_http_stop (u : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_rtr_gdb (core : * mut RCore , launch : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_prevopsz (core : * mut RCore , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_config (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_mounts (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_matrix (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_anal (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_debugtraces (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_define (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , distance : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_trackflags (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_graph (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_zigns (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_rop (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_comments (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_prompt (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_esil (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_search_preludes (core : * mut RCore , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_search_prelude (core : * mut RCore , from : u64 , to : u64 , buf : * const u8 , blen : :: std :: os :: raw :: c_int , mask : * const u8 , mlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_get_boundaries_prot (core : * mut RCore , protection : :: std :: os :: raw :: c_int , mode : * const :: std :: os :: raw :: c_char , prefix : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_core_patch (core : * mut RCore , patch : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_patch_file (core : * mut RCore , patchfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_patch_unified (core : * mut RCore , patch : * const :: std :: os :: raw :: c_char , level : :: std :: os :: raw :: c_int , revert : bool) -> bool ; } extern "C" { pub fn r_core_hack (core : * mut RCore , op : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_dump (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , addr : u64 , size : u64 , append : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_diff_show (core : * mut RCore , core2 : * mut RCore) ; } extern "C" { pub fn r_core_diff_show_json (core : * mut RCore , core2 : * mut RCore) ; } extern "C" { pub fn r_core_clippy (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmpwatch_free (w : * mut RCoreCmpWatcher) ; } extern "C" { pub fn r_core_cmpwatch_get (core : * mut RCore , addr : u64) -> * mut RCoreCmpWatcher ; } extern "C" { pub fn r_core_cmpwatch_add (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmpwatch_del (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_cmpwatch_update (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_cmpwatch_show (core : * mut RCore , addr : u64 , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_cmpwatch_revert (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_undo_new (offset : u64 , action : * const :: std :: os :: raw :: c_char , revert : * const :: std :: os :: raw :: c_char) -> * mut RCoreUndo ; } extern "C" { pub fn r_core_undo_print (core : * mut RCore , mode : :: std :: os :: raw :: c_int , cond : * mut RCoreUndoCondition) ; } extern "C" { pub fn r_core_undo_free (cu : * mut RCoreUndo) ; } extern "C" { pub fn r_core_undo_push (core : * mut RCore , cu : * mut RCoreUndo) ; } extern "C" { pub fn r_core_undo_pop (core : * mut RCore) ; } extern "C" { pub fn r_core_undo_up (core : * mut RCore) ; } extern "C" { pub fn r_core_undo_down (core : * mut RCore) ; } pub type RCoreLogCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , count : :: std :: os :: raw :: c_int , message : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_core_log_free (log : * mut RCoreLog) ; } extern "C" { pub fn r_core_log_view (core : * mut RCore , num : :: std :: os :: raw :: c_int , shift : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_log_init (log : * mut RCoreLog) ; } extern "C" { pub fn r_core_log_get (core : * mut RCore , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_log_new () -> * mut RCoreLog ; } extern "C" { pub fn r_core_log_run (core : * mut RCore , buf : * const :: std :: os :: raw :: c_char , cb : RCoreLogCallback) -> bool ; } extern "C" { pub fn r_core_log_list (core : * mut RCore , n : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_log_add (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_log_del (core : * mut RCore , n : :: std :: os :: raw :: c_int) ; } pub type PrintItemCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , p : * mut :: std :: os :: raw :: c_void , selected : bool) -> * mut :: std :: os :: raw :: c_char > ; extern "C" { pub fn r_str_widget_list (user : * mut :: std :: os :: raw :: c_void , list : * mut RList , rows : :: std :: os :: raw :: c_int , cur : :: std :: os :: raw :: c_int , cb : PrintItemCallback) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_pj_new (core : * mut RCore) -> * mut PJ ; } extern "C" { pub fn r_core_table_new (core : * mut RCore , title : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } extern "C" { pub fn r_core_cmd_help (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_json (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_match (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_help_match_spec (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_contains (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_contains_spec (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RCoreAnalStatsItem { pub youarehere : u32 , pub flags : u32 , pub comments : u32 , pub functions : u32 , pub blocks : u32 , pub in_functions : u32 , pub symbols : u32 , pub strings : u32 , pub perm : u32 , } # [test] fn bindgen_test_layout_RCoreAnalStatsItem () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreAnalStatsItem > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreAnalStatsItem > () , 36usize , concat ! ("Size of: " , stringify ! (RCoreAnalStatsItem))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreAnalStatsItem > () , 4usize , concat ! ("Alignment of " , stringify ! (RCoreAnalStatsItem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . youarehere) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (youarehere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comments) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . functions) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (functions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocks) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (blocks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_functions) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (in_functions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (perm))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreAnalStats { pub block : * mut RCoreAnalStatsItem , } # [test] fn bindgen_test_layout_RCoreAnalStats () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreAnalStats > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreAnalStats > () , 8usize , concat ! ("Size of: " , stringify ! (RCoreAnalStats))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreAnalStats > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreAnalStats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStats) , "::" , stringify ! (block))) ; } impl Default for RCoreAnalStats { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_core_anal_hasrefs (core : * mut RCore , value : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_get_comments (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_get_stats (a : * mut RCore , from : u64 , to : u64 , step : u64) -> * mut RCoreAnalStats ; } extern "C" { pub fn r_core_anal_stats_free (s : * mut RCoreAnalStats) ; } extern "C" { pub fn r_core_syscmd_ls (input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_syscmd_cat (file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_syscmd_mkdir (dir : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_hist_offset_up (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_offset_down (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_list (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_echo (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_table (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } pub type inRangeCb = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , from : u64 , to : u64 , vsize : :: std :: os :: raw :: c_int , cb_user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_core_search_value_in_range (core : * mut RCore , relative : bool , search_itv : RInterval , vmin : u64 , vmax : u64 , vsize : :: std :: os :: raw :: c_int , cb : inRangeCb , cb_user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_autocomplete_add (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int , lock : bool) -> * mut RCoreAutocomplete ; } extern "C" { pub fn r_core_autocomplete_free (obj : * mut RCoreAutocomplete) ; } extern "C" { pub fn r_core_autocomplete_reload (core : * mut RCore) ; } extern "C" { pub fn r_core_autocomplete_find (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char , exact : bool) -> * mut RCoreAutocomplete ; } extern "C" { pub fn r_core_autocomplete_remove (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_anal_propagate_noreturn (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_plugin_init (cmd : * mut RCmd) -> bool ; } extern "C" { pub fn r_core_plugin_add (cmd : * mut RCmd , plugin : * mut RCorePlugin) -> bool ; } extern "C" { pub fn r_core_plugin_remove (cmd : * mut RCmd , plugin : * mut RCorePlugin) -> bool ; } extern "C" { pub fn r_core_plugin_check (cmd : * mut RCmd , a0 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_plugin_fini (cmd : * mut RCmd) ; } 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 () { const UNINIT : :: std :: mem :: MaybeUninit < __va_list_tag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . gp_offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (gp_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fp_offset) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (fp_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow_arg_area) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (overflow_arg_area))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_save_area) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (reg_save_area))) ; } impl Default for __va_list_tag { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct re_guts { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecREventHook_t { pub _start : * mut REventHook , pub _end : * mut REventHook , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecREventHook_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecREventHook_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecREventHook_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecREventHook_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecREventHook_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecREventHook_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecREventHook_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecListInfo_t { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecStringSlice_t { pub _start : * mut RStringSlice , pub _end : * mut RStringSlice , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecStringSlice_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecStringSlice_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecStringSlice_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecStringSlice_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecStringSlice_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecStringSlice_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecStringSlice_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecFdPairs_t { pub _start : * mut RConsFdPair , pub _end : * mut RConsFdPair , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecFdPairs_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecFdPairs_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecFdPairs_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecFdPairs_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecFdPairs_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecFdPairs_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecFdPairs_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct layer_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct ptrace_wrap_instance_t { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinImport_t { pub _start : * mut RBinImport , pub _end : * mut RBinImport , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinImport_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinImport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinImport_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinImport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinImport_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinImport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinImport_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinSymbol_t { pub _start : * mut RBinSymbol , pub _end : * mut RBinSymbol , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinSymbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinSymbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinSymbol_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinSymbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinSymbol_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinSymbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinSymbol_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinSection_t { pub _start : * mut RBinSection , pub _end : * mut RBinSection , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinSection_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinSection_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinSection_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinSection_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinSection_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinSection_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinSection_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinEntry_t { pub _start : * mut RBinSymbol , pub _end : * mut RBinSymbol , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinEntry_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinEntry_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinEntry_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinEntry_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinEntry_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinEntry_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinEntry_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecTraceOp_t { pub _start : * mut REsilTraceOp , pub _end : * mut REsilTraceOp , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecTraceOp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecTraceOp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecTraceOp_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecTraceOp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecTraceOp_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecTraceOp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecTraceOp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecAccess_t { pub _start : * mut REsilTraceAccess , pub _end : * mut REsilTraceAccess , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecAccess_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecAccess_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecAccess_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecAccess_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecAccess_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecAccess_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecAccess_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecBacktrace_t { pub _start : * mut u64 , pub _end : * mut u64 , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecBacktrace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecBacktrace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecBacktrace_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecBacktrace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecBacktrace_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecBacktrace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecBacktrace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecDebugTracepoint_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecDebugPluginSession_t { pub _address : u8 , }
[INFO] [stdout] 3 + # [repr (C)] # [derive (Copy , Clone , Debug , Default , Eq , Hash , Ord , PartialEq , PartialOrd)] pub struct __BindgenBitfieldUnit < Storage > { storage : Storage , } impl < Storage > __BindgenBitfieldUnit < Storage > { # [inline] pub const fn new (storage : Storage) -> Self { Self { storage } } } impl < Storage > __BindgenBitfieldUnit < Storage > where Storage : AsRef < [u8] > + AsMut < [u8] >, { # [inline] pub fn get_bit (& self , index : usize) -> bool { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = self . storage . as_ref () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; byte & mask == mask } # [inline] pub fn set_bit (& mut self , index : usize , val : bool) { debug_assert ! (index / 8 < self . storage . as_ref () . len ()) ; let byte_index = index / 8 ; let byte = & mut self . storage . as_mut () [byte_index] ; let bit_index = if cfg ! (target_endian = "big") { 7 - (index % 8) } else { index % 8 } ; let mask = 1 << bit_index ; if val { * byte |= mask ; } else { * byte &= ! mask ; } } # [inline] pub fn get (& self , bit_offset : usize , bit_width : u8) -> u64 { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; let mut val = 0 ; for i in 0 .. (bit_width as usize) { if self . get_bit (i + bit_offset) { let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; val |= 1 << index ; } } val } # [inline] pub fn set (& mut self , bit_offset : usize , bit_width : u8 , val : u64) { debug_assert ! (bit_width <= 64) ; debug_assert ! (bit_offset / 8 < self . storage . as_ref () . len ()) ; debug_assert ! ((bit_offset + (bit_width as usize)) / 8 <= self . storage . as_ref () . len ()) ; for i in 0 .. (bit_width as usize) { let mask = 1 << i ; let val_bit_is_set = val & mask == mask ; let index = if cfg ! (target_endian = "big") { bit_width as usize - 1 - i } else { i } ; self . set_bit (index + bit_offset , val_bit_is_set) ; } } } # [repr (C)] # [derive (Default)] pub struct __IncompleteArrayField < T > (:: std :: marker :: PhantomData < T > , [T ; 0]) ; impl < T > __IncompleteArrayField < T > { # [inline] pub const fn new () -> Self { __IncompleteArrayField (:: std :: marker :: PhantomData , []) } # [inline] pub fn as_ptr (& self) -> * const T { self as * const _ as * const T } # [inline] pub fn as_mut_ptr (& mut self) -> * mut T { self as * mut _ as * mut T } # [inline] pub unsafe fn as_slice (& self , len : usize) -> & [T] { :: std :: slice :: from_raw_parts (self . as_ptr () , len) } # [inline] pub unsafe fn as_mut_slice (& mut self , len : usize) -> & mut [T] { :: std :: slice :: from_raw_parts_mut (self . as_mut_ptr () , len) } } impl < T > :: std :: fmt :: Debug for __IncompleteArrayField < T > { fn fmt (& self , fmt : & mut :: std :: fmt :: Formatter < '_ >) -> :: std :: fmt :: Result { fmt . write_str ("__IncompleteArrayField") } } pub type __uint64_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 ; pub type __time_t = :: std :: os :: raw :: c_long ; pub type __suseconds_t = :: std :: os :: raw :: c_long ; pub type pid_t = __pid_t ; pub type time_t = __time_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct __sigset_t { pub __val : [:: std :: os :: raw :: c_ulong ; 16usize] , } # [test] fn bindgen_test_layout___sigset_t () { const UNINIT : :: std :: mem :: MaybeUninit < __sigset_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __val) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__sigset_t) , "::" , stringify ! (__val))) ; } pub type sigset_t = __sigset_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct timeval { pub tv_sec : __time_t , pub tv_usec : __suseconds_t , } # [test] fn bindgen_test_layout_timeval () { const UNINIT : :: std :: mem :: MaybeUninit < timeval > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < timeval > () , 16usize , concat ! ("Size of: " , stringify ! (timeval))) ; assert_eq ! (:: std :: mem :: align_of :: < timeval > () , 8usize , concat ! ("Alignment of " , stringify ! (timeval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (timeval) , "::" , stringify ! (tv_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tv_usec) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (timeval) , "::" , stringify ! (tv_usec))) ; } # [repr (C)] # [derive (Copy , Clone)] pub union __atomic_wide_counter { pub __value64 : :: std :: os :: raw :: c_ulonglong , pub __value32 : __atomic_wide_counter__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct __atomic_wide_counter__bindgen_ty_1 { pub __low : :: std :: os :: raw :: c_uint , pub __high : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___atomic_wide_counter__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < __atomic_wide_counter__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __atomic_wide_counter__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (__atomic_wide_counter__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < __atomic_wide_counter__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (__atomic_wide_counter__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter__bindgen_ty_1) , "::" , stringify ! (__low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __high) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter__bindgen_ty_1) , "::" , stringify ! (__high))) ; } # [test] fn bindgen_test_layout___atomic_wide_counter () { const UNINIT : :: std :: mem :: MaybeUninit < __atomic_wide_counter > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < __atomic_wide_counter > () , 8usize , concat ! ("Size of: " , stringify ! (__atomic_wide_counter))) ; assert_eq ! (:: std :: mem :: align_of :: < __atomic_wide_counter > () , 8usize , concat ! ("Alignment of " , stringify ! (__atomic_wide_counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value64) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter) , "::" , stringify ! (__value64))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __value32) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__atomic_wide_counter) , "::" , stringify ! (__value32))) ; } impl Default for __atomic_wide_counter { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_internal_list { pub __prev : * mut __pthread_internal_list , pub __next : * mut __pthread_internal_list , } # [test] fn bindgen_test_layout___pthread_internal_list () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_internal_list > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __prev) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_list) , "::" , stringify ! (__prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __next) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_internal_list) , "::" , stringify ! (__next))) ; } impl Default for __pthread_internal_list { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type __pthread_list_t = __pthread_internal_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __pthread_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 __unused : :: std :: os :: raw :: c_short , pub __list : __pthread_list_t , } # [test] fn bindgen_test_layout___pthread_mutex_s () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_mutex_s > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __lock) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __count) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __owner) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__owner))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __nusers) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__nusers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __spins) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__spins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused) as usize - ptr as usize } , 22usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__unused))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __list) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_mutex_s) , "::" , stringify ! (__list))) ; } impl Default for __pthread_mutex_s { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub struct __pthread_cond_s { pub __wseq : __atomic_wide_counter , pub __g1_start : __atomic_wide_counter , 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] , pub __unused_initialized_1 : :: std :: os :: raw :: c_uint , pub __unused_initialized_2 : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout___pthread_cond_s () { const UNINIT : :: std :: mem :: MaybeUninit < __pthread_cond_s > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . __wseq) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__wseq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g1_start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g1_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g1_orig_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g1_orig_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __wrefs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__wrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __g_signals) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__g_signals))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused_initialized_1) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__unused_initialized_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __unused_initialized_2) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (__pthread_cond_s) , "::" , stringify ! (__unused_initialized_2))) ; } impl Default for __pthread_cond_s { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type pthread_t = :: std :: os :: raw :: c_ulong ; # [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 , } # [test] fn bindgen_test_layout_pthread_mutex_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_mutex_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_mutex_t > () , 40usize , concat ! ("Size of: " , stringify ! (pthread_mutex_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_mutex_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_mutex_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_mutex_t) , "::" , stringify ! (__align))) ; } impl Default for pthread_mutex_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub union pthread_cond_t { pub __data : __pthread_cond_s , pub __size : [:: std :: os :: raw :: c_char ; 48usize] , pub __align : :: std :: os :: raw :: c_longlong , } # [test] fn bindgen_test_layout_pthread_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < pthread_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pthread_cond_t > () , 48usize , concat ! ("Size of: " , stringify ! (pthread_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pthread_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pthread_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pthread_cond_t) , "::" , stringify ! (__align))) ; } impl Default for pthread_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut80 { pub Low : u64 , pub High : u16 , } # [test] fn bindgen_test_layout__ut80 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut80 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut80 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut80))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut80 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut80))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut80) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut80) , "::" , stringify ! (High))) ; } pub type ut80 = _ut80 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut96 { pub Low : u64 , pub High : u32 , } # [test] fn bindgen_test_layout__ut96 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut96 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut96 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut96))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut96 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut96))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut96) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut96) , "::" , stringify ! (High))) ; } pub type ut96 = _ut96 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut128 { pub Low : u64 , pub High : i64 , } # [test] fn bindgen_test_layout__ut128 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut128 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut128 > () , 16usize , concat ! ("Size of: " , stringify ! (_ut128))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut128 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut128))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut128) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_ut128) , "::" , stringify ! (High))) ; } pub type ut128 = _ut128 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _ut256 { pub Low : ut128 , pub High : ut128 , } # [test] fn bindgen_test_layout__ut256 () { const UNINIT : :: std :: mem :: MaybeUninit < _ut256 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _ut256 > () , 32usize , concat ! ("Size of: " , stringify ! (_ut256))) ; assert_eq ! (:: std :: mem :: align_of :: < _ut256 > () , 8usize , concat ! ("Alignment of " , stringify ! (_ut256))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Low) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_ut256) , "::" , stringify ! (Low))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . High) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_ut256) , "::" , stringify ! (High))) ; } pub type ut256 = _ut256 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct _utX { pub v80 : ut80 , pub v96 : ut96 , pub v128 : ut128 , pub v256 : ut256 , } # [test] fn bindgen_test_layout__utX () { const UNINIT : :: std :: mem :: MaybeUninit < _utX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _utX > () , 80usize , concat ! ("Size of: " , stringify ! (_utX))) ; assert_eq ! (:: std :: mem :: align_of :: < _utX > () , 8usize , concat ! ("Alignment of " , stringify ! (_utX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v80) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v80))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v96) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v96))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v128) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v128))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v256) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (_utX) , "::" , stringify ! (v256))) ; } pub type utX = _utX ; pub type RSysBits = u64 ; pub type wchar_t = :: std :: os :: raw :: c_int ; pub type __gnuc_va_list = __builtin_va_list ; 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 _bitfield_align_1 : [u32 ; 0] , pub _bitfield_1 : __BindgenBitfieldUnit < [u8 ; 3usize] > , pub _short_backupbuf : [:: std :: os :: raw :: c_char ; 1usize] , 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 _prevchain : * mut * mut _IO_FILE , pub _mode : :: std :: os :: raw :: c_int , pub _unused3 : :: std :: os :: raw :: c_int , pub _total_written : __uint64_t , pub _unused2 : [:: std :: os :: raw :: c_char ; 8usize] , } # [test] fn bindgen_test_layout__IO_FILE () { const UNINIT : :: std :: mem :: MaybeUninit < _IO_FILE > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . _flags) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_ptr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_read_base) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_read_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_base) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_write_end) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_write_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_buf_base) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_buf_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_buf_end) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_buf_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_save_base) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_save_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_backup_base) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_backup_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _IO_save_end) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_IO_save_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _markers) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_markers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chain) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_chain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _fileno) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_fileno))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _short_backupbuf) as usize - ptr as usize } , 119usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_short_backupbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _old_offset) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_old_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _cur_column) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_cur_column))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _vtable_offset) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_vtable_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _shortbuf) as usize - ptr as usize } , 131usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_shortbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _lock) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _offset) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _codecvt) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_codecvt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _wide_data) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_wide_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _freeres_list) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_freeres_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _freeres_buf) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_freeres_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _prevchain) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_prevchain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _mode) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _unused3) as usize - ptr as usize } , 196usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_unused3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _total_written) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_total_written))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _unused2) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (_IO_FILE) , "::" , stringify ! (_unused2))) ; } impl Default for _IO_FILE { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } impl _IO_FILE { # [inline] pub fn _flags2 (& self) -> :: std :: os :: raw :: c_int { unsafe { u32::cast_signed (self . _bitfield_1 . get (0usize , 24u8) as u32) } } # [inline] pub fn set__flags2 (& mut self , val : :: std :: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val as u64) } } # [inline] pub fn new_bitfield_1 (_flags2 : :: std :: os :: raw :: c_int) -> __BindgenBitfieldUnit < [u8 ; 3usize] > { let mut __bindgen_bitfield_unit : __BindgenBitfieldUnit < [u8 ; 3usize] > = Default :: default () ; __bindgen_bitfield_unit . set (0usize , 24u8 , { let _flags2 : u32 = unsafe { :: std :: mem :: transmute (_flags2) } ; _flags2 as u64 }) ; __bindgen_bitfield_unit } } pub type va_list = __gnuc_va_list ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct __dirstream { _unused : [u8 ; 0] , } pub type DIR = __dirstream ; pub type PrintfCallback = :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn sdb_strdup (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } pub type SdbListFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; pub type SdbListComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ls_iter_t { pub data : * mut :: std :: os :: raw :: c_void , pub n : * mut ls_iter_t , pub p : * mut ls_iter_t , } # [test] fn bindgen_test_layout_ls_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < ls_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ls_iter_t > () , 24usize , concat ! ("Size of: " , stringify ! (ls_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < ls_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (ls_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ls_iter_t) , "::" , stringify ! (p))) ; } impl Default for ls_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbListIter = ls_iter_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct ls_t { pub length : usize , pub head : * mut SdbListIter , pub tail : * mut SdbListIter , pub free : SdbListFree , pub cmp : SdbListComparator , pub sorted : bool , } # [test] fn bindgen_test_layout_ls_t () { const UNINIT : :: std :: mem :: MaybeUninit < ls_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < ls_t > () , 48usize , concat ! ("Size of: " , stringify ! (ls_t))) ; assert_eq ! (:: std :: mem :: align_of :: < ls_t > () , 8usize , concat ! ("Alignment of " , stringify ! (ls_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tail) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (ls_t) , "::" , stringify ! (sorted))) ; } impl Default for ls_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbList = ls_t ; pub type SdbHeapRealloc = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , ptr : * mut :: std :: os :: raw :: c_void , size : usize) -> * mut :: std :: os :: raw :: c_void > ; pub type SdbHeapFini = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_global_heap_t { pub realloc : SdbHeapRealloc , pub fini : SdbHeapFini , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_sdb_global_heap_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_global_heap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_global_heap_t > () , 24usize , concat ! ("Size of: " , stringify ! (sdb_global_heap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_global_heap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_global_heap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realloc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (realloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_global_heap_t) , "::" , stringify ! (data))) ; } impl Default for sdb_global_heap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbGlobalHeap = sdb_global_heap_t ; extern "C" { pub fn sdb_gh () -> * mut SdbGlobalHeap ; } # [doc = " keyvalue pair"] # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct sdb_kv { pub base : [u64 ; 3usize] , pub cas : u32 , pub expire : u64 , } # [test] fn bindgen_test_layout_sdb_kv () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_kv > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_kv > () , 40usize , concat ! ("Size of: " , stringify ! (sdb_kv))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_kv > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_kv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cas) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (cas))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expire) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sdb_kv) , "::" , stringify ! (expire))) ; } # [doc = " keyvalue pair"] pub type SdbKv = sdb_kv ; extern "C" { pub fn sdb_ht_new () -> * mut [u64 ; 11usize] ; } extern "C" { pub fn sdb_ht_free (ht : * mut [u64 ; 11usize]) ; } extern "C" { pub fn sdb_ht_insert (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_insert_kvp (ht : * mut [u64 ; 11usize] , kvp : * mut SdbKv , update : bool) -> bool ; } extern "C" { pub fn sdb_ht_update (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_delete (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_ht_find (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , found : * mut bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_ht_find_kvp (ht : * mut [u64 ; 11usize] , key : * const :: std :: os :: raw :: c_char , found : * mut bool) -> * mut SdbKv ; } pub type dict_freecb = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dict { pub table : * mut * mut :: std :: os :: raw :: c_void , pub f : dict_freecb , pub size : u32 , } # [test] fn bindgen_test_layout_dict () { const UNINIT : :: std :: mem :: MaybeUninit < dict > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dict > () , 24usize , concat ! ("Size of: " , stringify ! (dict))) ; assert_eq ! (:: std :: mem :: align_of :: < dict > () , 8usize , concat ! ("Alignment of " , stringify ! (dict))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dict) , "::" , stringify ! (size))) ; } impl Default for dict { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbMini = dict ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb { pub map : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub size : u32 , pub loop_ : u32 , pub khash : u32 , pub kpos : u32 , pub hpos : u32 , pub hslots : u32 , pub dpos : u32 , pub dlen : u32 , } # [test] fn bindgen_test_layout_cdb () { const UNINIT : :: std :: mem :: MaybeUninit < cdb > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb > () , 48usize , concat ! ("Size of: " , stringify ! (cdb))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loop_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (loop_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . khash) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (khash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kpos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (kpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpos) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (hpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hslots) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (hslots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dpos) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (dpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dlen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (cdb) , "::" , stringify ! (dlen))) ; } impl Default for cdb { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type BufferOp = :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int , arg2 : * const :: std :: os :: raw :: c_char , arg3 : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct buffer { pub x : * mut :: std :: os :: raw :: c_char , pub p : :: std :: os :: raw :: c_uint , pub n : :: std :: os :: raw :: c_uint , pub fd : :: std :: os :: raw :: c_int , pub op : BufferOp , } # [test] fn bindgen_test_layout_buffer () { const UNINIT : :: std :: mem :: MaybeUninit < buffer > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < buffer > () , 32usize , concat ! ("Size of: " , stringify ! (buffer))) ; assert_eq ! (:: std :: mem :: align_of :: < buffer > () , 8usize , concat ! ("Alignment of " , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (buffer) , "::" , stringify ! (op))) ; } impl Default for buffer { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct cdb_hp { pub h : u32 , pub p : u32 , } # [test] fn bindgen_test_layout_cdb_hp () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_hp > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_hp > () , 8usize , concat ! ("Size of: " , stringify ! (cdb_hp))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_hp > () , 4usize , concat ! ("Alignment of " , stringify ! (cdb_hp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_hp) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (cdb_hp) , "::" , stringify ! (p))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb_hplist { pub hp : [cdb_hp ; 1000usize] , pub next : * mut cdb_hplist , pub num : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_cdb_hplist () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_hplist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_hplist > () , 8016usize , concat ! ("Size of: " , stringify ! (cdb_hplist))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_hplist > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb_hplist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hp) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (hp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 8000usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 8008usize , concat ! ("Offset of field: " , stringify ! (cdb_hplist) , "::" , stringify ! (num))) ; } impl Default for cdb_hplist { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct cdb_make { pub bspace : [:: std :: os :: raw :: c_char ; 8192usize] , pub final_ : [:: std :: os :: raw :: c_char ; 1024usize] , pub count : [u32 ; 256usize] , pub start : [u32 ; 256usize] , pub head : * mut cdb_hplist , pub split : * mut cdb_hp , pub hash : * mut cdb_hp , pub numentries : u32 , pub memsize : u32 , pub b : buffer , pub pos : u32 , pub fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_cdb_make () { const UNINIT : :: std :: mem :: MaybeUninit < cdb_make > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < cdb_make > () , 11336usize , concat ! ("Size of: " , stringify ! (cdb_make))) ; assert_eq ! (:: std :: mem :: align_of :: < cdb_make > () , 8usize , concat ! ("Alignment of " , stringify ! (cdb_make))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bspace) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (bspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . final_) as usize - ptr as usize } , 8192usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (final_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 9216usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 10240usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 11264usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . split) as usize - ptr as usize } , 11272usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (split))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 11280usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numentries) as usize - ptr as usize } , 11288usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (numentries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memsize) as usize - ptr as usize } , 11292usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (memsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 11296usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 11328usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 11332usize , concat ! ("Offset of field: " , stringify ! (cdb_make) , "::" , stringify ! (fd))) ; } impl Default for cdb_make { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type GperfForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_gperf_t { pub name : * const :: std :: os :: raw :: c_char , pub get : :: std :: option :: Option < unsafe extern "C" fn (k : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char > , pub hash : :: std :: option :: Option < unsafe extern "C" fn (k : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_uint > , pub foreach : :: std :: option :: Option < unsafe extern "C" fn (cb : GperfForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool > , } # [test] fn bindgen_test_layout_sdb_gperf_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_gperf_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_gperf_t > () , 32usize , concat ! ("Size of: " , stringify ! (sdb_gperf_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_gperf_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_gperf_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (hash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foreach) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_gperf_t) , "::" , stringify ! (foreach))) ; } impl Default for sdb_gperf_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbGperf = sdb_gperf_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_t { pub dir : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub name : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub refs : :: std :: os :: raw :: c_int , pub lock : :: std :: os :: raw :: c_int , pub journal : :: std :: os :: raw :: c_int , pub db : cdb , pub m : cdb_make , pub ht : * mut [u64 ; 11usize] , pub eod : u32 , pub pos : u32 , pub gp : * mut SdbGperf , pub fdump : :: std :: os :: raw :: c_int , pub ndump : * mut :: std :: os :: raw :: c_char , pub expire : u64 , pub last : u64 , pub options : :: std :: os :: raw :: c_int , pub ns_lock : :: std :: os :: raw :: c_int , pub ns : * mut SdbList , pub hooks : * mut SdbList , pub tmpkv : SdbKv , pub depth : u32 , pub timestamped : bool , pub mht : SdbMini , } # [test] fn bindgen_test_layout_sdb_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_t > () , 11576usize , concat ! ("Size of: " , stringify ! (sdb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (refs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . journal) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (journal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . m) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (m))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 11424usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eod) as usize - ptr as usize } , 11432usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (eod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 11436usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 11440usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdump) as usize - ptr as usize } , 11448usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (fdump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndump) as usize - ptr as usize } , 11456usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ndump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expire) as usize - ptr as usize } , 11464usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (expire))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 11472usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 11480usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns_lock) as usize - ptr as usize } , 11484usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ns_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns) as usize - ptr as usize } , 11488usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hooks) as usize - ptr as usize } , 11496usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (hooks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmpkv) as usize - ptr as usize } , 11504usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (tmpkv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 11544usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timestamped) as usize - ptr as usize } , 11548usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (timestamped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mht) as usize - ptr as usize } , 11552usize , concat ! ("Offset of field: " , stringify ! (sdb_t) , "::" , stringify ! (mht))) ; } impl Default for sdb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type Sdb = sdb_t ; extern "C" { pub fn sdb_new0 () -> * mut Sdb ; } extern "C" { pub fn sdb_new (path : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char , lock : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_open (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_open_gperf (s : * mut Sdb , g : * mut SdbGperf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_close (s : * mut Sdb) ; } extern "C" { pub fn sdb_config (s : * mut Sdb , options : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_free (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_file (s : * mut Sdb , dir : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_merge (d : * mut Sdb , s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_count (s : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_reset (s : * mut Sdb) ; } extern "C" { pub fn sdb_setup (s : * mut Sdb , options : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_drain (arg1 : * mut Sdb , arg2 : * mut Sdb) ; } extern "C" { pub fn sdb_copy (src : * mut Sdb , dst : * mut Sdb) ; } extern "C" { pub fn sdb_stats (s : * mut Sdb , disk : * mut u32 , mem : * mut u32) -> bool ; } extern "C" { pub fn sdb_dump_hasnext (s : * mut Sdb) -> bool ; } pub type SdbForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool > ; extern "C" { pub fn sdb_foreach (s : * mut Sdb , cb : SdbForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_foreach_list (s : * mut Sdb , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_foreach_list_filter (s : * mut Sdb , filter : SdbForeachCallback , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_foreach_match (s : * mut Sdb , expr : * const :: std :: os :: raw :: c_char , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn sdb_main (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_query (s : * mut Sdb , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_queryf (s : * mut Sdb , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_query_lines (s : * mut Sdb , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_querys (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , len : usize , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_querysf (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , buflen : usize , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_query_file (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_exists (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_remove (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_unset (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nunset (arg1 : * mut Sdb , nkey : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_unset_like (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_like (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char , cb : SdbForeachCallback) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_cgen_header (cname : * const :: std :: os :: raw :: c_char , textmode : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_cgen_footer (name : * const :: std :: os :: raw :: c_char , cname : * const :: std :: os :: raw :: c_char , textmode : bool) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct sdb_diff_t { pub path : * const SdbList , pub k : * const :: std :: os :: raw :: c_char , pub v : * const :: std :: os :: raw :: c_char , pub add : bool , } # [test] fn bindgen_test_layout_sdb_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < sdb_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sdb_diff_t > () , 32usize , concat ! ("Size of: " , stringify ! (sdb_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sdb_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sdb_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . k) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (k))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . add) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (sdb_diff_t) , "::" , stringify ! (add))) ; } impl Default for sdb_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type SdbDiff = sdb_diff_t ; extern "C" { pub fn sdb_diff_format (str_ : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , diff : * const SdbDiff) -> :: std :: os :: raw :: c_int ; } pub type SdbDiffCallback = :: std :: option :: Option < unsafe extern "C" fn (diff : * const SdbDiff , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn sdb_diff (a : * mut Sdb , b : * mut Sdb , cb : SdbDiffCallback , cb_user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_get (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_nget (arg1 : * mut Sdb , nkey : u64 , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_get_len (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , vlen : * mut :: std :: os :: raw :: c_int , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_get (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_get_len (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , vlen : * mut :: std :: os :: raw :: c_int , cas : * mut u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_set (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nset (arg1 : * mut Sdb , nkey : u64 , data : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_nget (s : * mut Sdb , nkey : u64 , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_num_nset (s : * mut Sdb , nkey : u64 , nval : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_set_owned (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * mut :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_concat (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_uncat (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_nadd (s : * mut Sdb , nkey : u64 , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_sync (arg1 : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_num_exists (arg1 : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_num_base (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_num_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_inc (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : u64 , cas : u32) -> u64 ; } extern "C" { pub fn sdb_num_dec (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : u64 , cas : u32) -> u64 ; } extern "C" { pub fn sdb_num_min (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_num_max (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , v : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ptr_set (db : * mut Sdb , key : * const :: std :: os :: raw :: c_char , p : * mut :: std :: os :: raw :: c_void , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ptr_get (db : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn sdb_disk_create (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_disk_insert (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_disk_finish (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_disk_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_text_save_fd (s : * mut Sdb , fd : :: std :: os :: raw :: c_int , sort : bool) -> bool ; } extern "C" { pub fn sdb_text_save (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char , sort : bool) -> bool ; } extern "C" { pub fn sdb_text_load_buf (s : * mut Sdb , buf : * mut :: std :: os :: raw :: c_char , sz : usize) -> bool ; } extern "C" { pub fn sdb_text_load (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_text_check (s : * mut Sdb , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_dump_begin (s : * mut Sdb) ; } extern "C" { pub fn sdb_dump_next (s : * mut Sdb) -> * mut SdbKv ; } extern "C" { pub fn sdb_dump_dupnext (s : * mut Sdb , key : * mut :: std :: os :: raw :: c_char , value : * mut * mut :: std :: os :: raw :: c_char , _vlen : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn sdb_journal_close (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_open (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_load (s : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_journal_log (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_journal_clear (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_journal_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_itoa (n : u64 , base : :: std :: os :: raw :: c_int , s : * mut :: std :: os :: raw :: c_char , slen : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_itoas (n : u64 , base : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_atoi (s : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn sdb_lock (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_lock_file (f : * const :: std :: os :: raw :: c_char , buf : * mut :: std :: os :: raw :: c_char , buf_size : usize) -> bool ; } extern "C" { pub fn sdb_unlock (s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_unlink (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_lock_wait (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_expire_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , expire : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_expire_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_now () -> u64 ; } extern "C" { pub fn sdb_unow () -> u64 ; } extern "C" { pub fn sdb_hash_byte (s : * const :: std :: os :: raw :: c_char) -> u8 ; } extern "C" { pub fn sdb_js0n (js : * const :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_uint , out : * mut :: std :: os :: raw :: c_uint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_isjson (k : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_json_get_str (json : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_get_bool (json : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_json_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_set (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_json_num_get (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_set (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , v : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_dec (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_num_inc (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_json_indent (s : * const :: std :: os :: raw :: c_char , tab : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_json_unindent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SdbJsonString { pub buf : * mut :: std :: os :: raw :: c_char , pub blen : usize , pub len : usize , } # [test] fn bindgen_test_layout_SdbJsonString () { const UNINIT : :: std :: mem :: MaybeUninit < SdbJsonString > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SdbJsonString > () , 24usize , concat ! ("Size of: " , stringify ! (SdbJsonString))) ; assert_eq ! (:: std :: mem :: align_of :: < SdbJsonString > () , 8usize , concat ! ("Alignment of " , stringify ! (SdbJsonString))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (blen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SdbJsonString) , "::" , stringify ! (len))) ; } impl Default for SdbJsonString { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn sdb_json_format (s : * mut SdbJsonString , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_ns (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , create : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_ns_path (s : * mut Sdb , path : * const :: std :: os :: raw :: c_char , create : :: std :: os :: raw :: c_int) -> * mut Sdb ; } extern "C" { pub fn sdb_ns_init (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_free (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_lock (s : * mut Sdb , lock : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_ns_sync (s : * mut Sdb) ; } extern "C" { pub fn sdb_ns_set (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , r : * mut Sdb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_ns_unset (s : * mut Sdb , name : * const :: std :: os :: raw :: c_char , r : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_array_contains (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_array_contains_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_array_indexof (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_set (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_set_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_append (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_append_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_prepend (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_prepend_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_get (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_get_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_array_get_idx (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_insert (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_insert_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_unset (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_delete (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_sort (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) ; } extern "C" { pub fn sdb_array_sort_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : u32) ; } extern "C" { pub fn sdb_array_add (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_sorted (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_add_sorted_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_remove (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_remove_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_anext (str_ : * mut :: std :: os :: raw :: c_char , next : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_const_anext (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_alen (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_alen_ignore_empty (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_size (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_length (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_list (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_push (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , cas : u32) -> bool ; } extern "C" { pub fn sdb_array_pop (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_push_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , num : u64 , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_array_pop_num (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> u64 ; } extern "C" { pub fn sdb_array_pop_head (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_array_pop_tail (s : * mut Sdb , key : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> * mut :: std :: os :: raw :: c_char ; } pub type SdbHook = :: std :: option :: Option < unsafe extern "C" fn (s : * mut Sdb , user : * mut :: std :: os :: raw :: c_void , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) > ; extern "C" { pub fn sdb_hook (s : * mut Sdb , cb : SdbHook , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn sdb_unhook (s : * mut Sdb , h : SdbHook) -> bool ; } extern "C" { pub fn sdb_hook_call (s : * mut Sdb , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_hook_free (s : * mut Sdb) ; } extern "C" { pub fn sdb_isnum (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_isempty (s : * mut Sdb) -> bool ; } extern "C" { pub fn sdb_type (k : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_match (str_ : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn sdb_bool_set (db : * mut Sdb , str_ : * const :: std :: os :: raw :: c_char , v : bool , cas : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_bool_get (db : * mut Sdb , str_ : * const :: std :: os :: raw :: c_char , cas : * mut u32) -> bool ; } extern "C" { pub fn sdb_decode (in_ : * const :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn sdb_encode (bin : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_encode_raw (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn sdb_decode_raw (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_init (p : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_free (p : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn sdb_fmt_tobin (_str : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , stru : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn sdb_fmt_tostr (stru : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_fmt_array (list : * const :: std :: os :: raw :: c_char) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_fmt_array_num (list : * const :: std :: os :: raw :: c_char) -> * mut u64 ; } extern "C" { pub fn sdb_tool (path : * const :: std :: os :: raw :: c_char , mirror_mode : bool) -> bool ; } extern "C" { pub fn sdb_array_compact (p : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn sdb_aslice (out : * mut :: std :: os :: raw :: c_char , from : :: std :: os :: raw :: c_int , to : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RListFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_iter_t { pub data : * mut :: std :: os :: raw :: c_void , pub n : * mut r_list_iter_t , pub p : * mut r_list_iter_t , } # [test] fn bindgen_test_layout_r_list_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_iter_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_list_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_list_iter_t) , "::" , stringify ! (p))) ; } impl Default for r_list_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RListIter = r_list_iter_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_t { pub head : * mut RListIter , pub tail : * mut RListIter , pub free : RListFree , pub length : :: std :: os :: raw :: c_int , pub sorted : bool , } # [test] fn bindgen_test_layout_r_list_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_list_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tail) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (tail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_list_t) , "::" , stringify ! (sorted))) ; } impl Default for r_list_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RList = r_list_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_list_range_t { pub h : * mut [u64 ; 11usize] , pub l : * mut RList , } # [test] fn bindgen_test_layout_r_list_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_list_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_list_range_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_list_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_list_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_list_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_list_range_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_list_range_t) , "::" , stringify ! (l))) ; } impl Default for r_list_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RListRange = r_list_range_t ; pub type RListComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RListComparatorItem = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void) -> u64 > ; extern "C" { pub fn r_list_new () -> * mut RList ; } extern "C" { pub fn r_list_newf (f : RListFree) -> * mut RList ; } extern "C" { pub fn r_list_iter_get_next (list : * mut RListIter) -> * mut RListIter ; } extern "C" { pub fn r_list_iter_get_prev (list : * mut RListIter) -> * mut RListIter ; } extern "C" { pub fn r_list_set_n (list : * mut RList , n : :: std :: os :: raw :: c_int , p : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_get_data (list : * mut RListIter) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_append (list : * mut RList , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_prepend (list : * mut RList , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_insert (list : * mut RList , n : u32 , data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_length (list : * const RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_length (iter : * mut RListIter) -> usize ; } extern "C" { pub fn r_list_first (list : * const RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_last (list : * const RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_add_sorted (list : * mut RList , data : * mut :: std :: os :: raw :: c_void , cmp : RListComparator) -> * mut RListIter ; } extern "C" { pub fn r_list_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_merge_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_insertion_sort (list : * mut RList , cmp : RListComparator) ; } extern "C" { pub fn r_list_uniq (list : * const RList , cmp : RListComparatorItem) -> * mut RList ; } extern "C" { pub fn r_list_uniq_inplace (list : * mut RList , cmp : RListComparatorItem) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_init (list : * mut RList) ; } extern "C" { pub fn r_list_delete (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_delete_data (list : * mut RList , ptr : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_list_iter_init (iter : * mut RListIter , list : * mut RList) ; } extern "C" { pub fn r_list_purge (list : * mut RList) ; } extern "C" { pub fn r_list_free (list : * mut RList) ; } extern "C" { pub fn r_list_item_new (data : * mut :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_split (list : * mut RList , ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_list_split_iter (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_join (list1 : * mut RList , list2 : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_get_n (list : * const RList , n : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_get_nth (list : * const RList , n : :: std :: os :: raw :: c_int) -> * mut RListIter ; } extern "C" { pub fn r_list_del_n (list : * mut RList , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_list_iter_to_top (list : * mut RList , iter : * mut RListIter) ; } extern "C" { pub fn r_list_pop (list : * mut RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_pop_head (list : * mut RList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_list_reverse (list : * mut RList) ; } pub type RListClone = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; extern "C" { pub fn r_list_clone (list : * const RList , clone : RListClone) -> * mut RList ; } extern "C" { pub fn r_list_to_str (list : * mut RList , ch : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_list_contains (list : * const RList , p : * const :: std :: os :: raw :: c_void) -> * mut RListIter ; } extern "C" { pub fn r_list_find (list : * const RList , p : * const :: std :: os :: raw :: c_void , cmp : RListComparator) -> * mut RListIter ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_regex_t { pub re_magic : :: std :: os :: raw :: c_int , pub re_nsub : usize , pub re_endp : * const :: std :: os :: raw :: c_char , pub re_g : * mut re_guts , pub re_flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_regex_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_regex_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_regex_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_regex_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_regex_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_regex_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_magic) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_magic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_nsub) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_nsub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_endp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_endp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_g) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_g))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . re_flags) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_regex_t) , "::" , stringify ! (re_flags))) ; } impl Default for r_regex_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegex = r_regex_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_regmatch_t { pub rm_so : i64 , pub rm_eo : i64 , } # [test] fn bindgen_test_layout_r_regmatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_regmatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_regmatch_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_regmatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_regmatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_regmatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm_so) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_regmatch_t) , "::" , stringify ! (rm_so))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm_eo) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_regmatch_t) , "::" , stringify ! (rm_eo))) ; } pub type RRegexMatch = r_regmatch_t ; extern "C" { pub fn r_regex_run (pattern : * const :: std :: os :: raw :: c_char , flags : * const :: std :: os :: raw :: c_char , text : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_match (pattern : * const :: std :: os :: raw :: c_char , flags : * const :: std :: os :: raw :: c_char , text : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_regex_flags (flags : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_new (pattern : * const :: std :: os :: raw :: c_char , cflags : * const :: std :: os :: raw :: c_char) -> * mut RRegex ; } extern "C" { pub fn r_regex_free (arg1 : * mut RRegex) ; } extern "C" { pub fn r_regex_init (arg1 : * mut RRegex , pattern : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_fini (arg1 : * mut RRegex) ; } extern "C" { pub fn r_regex_check (rr : * const RRegex , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_regex_exec (preg : * const RRegex , string : * const :: std :: os :: raw :: c_char , nmatch : usize , __pmatch : * mut RRegexMatch , eflags : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_regex_match_list (rx : * mut RRegex , text : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_regex_error (rx : * mut RRegex , errcode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_skiplist_node_t { pub data : * mut :: std :: os :: raw :: c_void , pub forward : * mut * mut r_skiplist_node_t , } # [test] fn bindgen_test_layout_r_skiplist_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_skiplist_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_skiplist_node_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_skiplist_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_skiplist_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_skiplist_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_node_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forward) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_node_t) , "::" , stringify ! (forward))) ; } impl Default for r_skiplist_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSkipListNode = r_skiplist_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_skiplist_t { pub head : * mut RSkipListNode , pub list_level : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub freefn : RListFree , pub compare : RListComparator , } # [test] fn bindgen_test_layout_r_skiplist_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_skiplist_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_skiplist_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_skiplist_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_skiplist_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_skiplist_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . head) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (head))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list_level) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (list_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . freefn) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (freefn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . compare) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_skiplist_t) , "::" , stringify ! (compare))) ; } impl Default for r_skiplist_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSkipList = r_skiplist_t ; extern "C" { pub fn r_skiplist_new (freefn : RListFree , comparefn : RListComparator) -> * mut RSkipList ; } extern "C" { pub fn r_skiplist_free (list : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_purge (list : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_insert (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_insert_autofree (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_skiplist_delete (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_skiplist_delete_node (list : * mut RSkipList , node : * mut RSkipListNode) -> bool ; } extern "C" { pub fn r_skiplist_find (list : * const RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_find_geq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_find_leq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut RSkipListNode ; } extern "C" { pub fn r_skiplist_join (l1 : * mut RSkipList , l2 : * mut RSkipList) ; } extern "C" { pub fn r_skiplist_get_first (list : * mut RSkipList) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_n (list : * mut RSkipList , n : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_geq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_get_leq (list : * mut RSkipList , data : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_skiplist_empty (list : * mut RSkipList) -> bool ; } extern "C" { pub fn r_skiplist_to_list (list : * mut RSkipList) -> * mut RList ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RSysInfo { pub sysname : * mut :: std :: os :: raw :: c_char , pub nodename : * mut :: std :: os :: raw :: c_char , pub release : * mut :: std :: os :: raw :: c_char , pub version : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RSysInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RSysInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RSysInfo > () , 40usize , concat ! ("Size of: " , stringify ! (RSysInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RSysInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RSysInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (sysname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodename) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (nodename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . release) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (release))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RSysInfo) , "::" , stringify ! (machine))) ; } impl Default for RSysInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_sys_info () -> * mut RSysInfo ; } extern "C" { pub fn r_sys_info_free (si : * mut RSysInfo) ; } extern "C" { pub fn r_sys_sigaction (sig : * mut :: std :: os :: raw :: c_int , handler : :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_signal (sig : :: std :: os :: raw :: c_int , handler : :: std :: option :: Option < unsafe extern "C" fn (arg1 : :: std :: os :: raw :: c_int) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_signable (v : bool) ; } extern "C" { pub fn r_sys_env_init () ; } extern "C" { pub fn r_sys_get_environ () -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_set_environ (e : * mut * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sys_fork () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_exit (status : :: std :: os :: raw :: c_int , nocleanup : bool) ; } extern "C" { pub fn r_sys_stop () -> bool ; } extern "C" { pub fn r_sys_pid_to_path (pid : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_run (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_run_rop (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getpid () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_crash_handler (cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_arch_str (arch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_arch_id (arch : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_arch_match (archstr : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_dir (path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_sys_perror_str (fun : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sys_tem (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_prefix (pfx : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_mktemp (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_mkdir (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_mkdirp (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_sleep (secs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_usleep (usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getenv (key : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_getenv_asbool (key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_getenv_asint (key : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getenv_asut64 (key : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_sys_setenv (key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv_sep (key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , prefix : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv2 (key : * const :: std :: os :: raw :: c_char , value : * const u8 , len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_setenv_asbool (key : * const :: std :: os :: raw :: c_char , v : bool) ; } extern "C" { pub fn r_sys_setenv_asut64 (key : * const :: std :: os :: raw :: c_char , n : u64) ; } extern "C" { pub fn r_sys_clearenv () -> bool ; } extern "C" { pub fn r_sys_whoami () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_uid () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_getdir () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_chdir (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sys_aslr (val : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sys_thp_mode () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd_str_full (cmd : * const :: std :: os :: raw :: c_char , input : * const :: std :: os :: raw :: c_char , ilen : :: std :: os :: raw :: c_int , output : * mut * mut :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int , sterr : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_truncate (file : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd (cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmdbg (cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmdf (fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sys_cmd_str (cmd : * const :: std :: os :: raw :: c_char , input : * const :: std :: os :: raw :: c_char , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_cmd_strf (cmd : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_backtrace () ; } extern "C" { pub fn r_sys_tts (txt : * const :: std :: os :: raw :: c_char , bg : bool) -> bool ; } extern "C" { pub fn r_syscmd_ls (input : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_cat (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_pushd (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_popd () -> bool ; } extern "C" { pub fn r_syscmd_popalld () -> bool ; } extern "C" { pub fn r_syscmd_mkdir (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_mktemp (dir : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_mv (input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscmd_uniq (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_head (file : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_tail (file : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_join (file1 : * const :: std :: os :: raw :: c_char , file2 : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscmd_sort (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sys_unxz (data : * const u8 , len : usize , olen : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_w32_init () -> bool ; } # [repr (C)] # [derive (Copy , Clone)] pub union sem_t { pub __size : [:: std :: os :: raw :: c_char ; 32usize] , pub __align : :: std :: os :: raw :: c_long , } # [test] fn bindgen_test_layout_sem_t () { const UNINIT : :: std :: mem :: MaybeUninit < sem_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sem_t > () , 32usize , concat ! ("Size of: " , stringify ! (sem_t))) ; assert_eq ! (:: std :: mem :: align_of :: < sem_t > () , 8usize , concat ! ("Alignment of " , stringify ! (sem_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sem_t) , "::" , stringify ! (__size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __align) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sem_t) , "::" , stringify ! (__align))) ; } impl Default for sem_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct tm { pub tm_sec : :: std :: os :: raw :: c_int , pub tm_min : :: std :: os :: raw :: c_int , pub tm_hour : :: std :: os :: raw :: c_int , pub tm_mday : :: std :: os :: raw :: c_int , pub tm_mon : :: std :: os :: raw :: c_int , pub tm_year : :: std :: os :: raw :: c_int , pub tm_wday : :: std :: os :: raw :: c_int , pub tm_yday : :: std :: os :: raw :: c_int , pub tm_isdst : :: std :: os :: raw :: c_int , pub tm_gmtoff : :: std :: os :: raw :: c_long , pub tm_zone : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_tm () { const UNINIT : :: std :: mem :: MaybeUninit < tm > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < tm > () , 56usize , concat ! ("Size of: " , stringify ! (tm))) ; assert_eq ! (:: std :: mem :: align_of :: < tm > () , 8usize , concat ! ("Alignment of " , stringify ! (tm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_sec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_sec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_min) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_hour) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_hour))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_mday) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_mday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_mon) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_mon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_year) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_year))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_wday) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_wday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_yday) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_yday))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_isdst) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_isdst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_gmtoff) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_gmtoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tm_zone) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (tm) , "::" , stringify ! (tm_zone))) ; } impl Default for tm { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RThreadFunctionRet_R_TH_FREED : RThreadFunctionRet = - 1 ; pub const RThreadFunctionRet_R_TH_STOP : RThreadFunctionRet = 0 ; pub const RThreadFunctionRet_R_TH_REPEAT : RThreadFunctionRet = 1 ; pub const RThreadFunctionRet_R_TH_PAUSE : RThreadFunctionRet = 2 ; pub type RThreadFunctionRet = :: std :: os :: raw :: c_int ; pub type RThreadFunction = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_th_t) -> RThreadFunctionRet > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_th_sem_t { pub sem : * mut sem_t , } # [test] fn bindgen_test_layout_r_th_sem_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_sem_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_sem_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_th_sem_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_sem_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_sem_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_sem_t) , "::" , stringify ! (sem))) ; } impl Default for r_th_sem_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadSemaphore = r_th_sem_t ; pub const r_th_lock_type_t_R_TH_LOCK_TYPE_STATIC : r_th_lock_type_t = 0 ; pub const r_th_lock_type_t_R_TH_LOCK_TYPE_HEAP : r_th_lock_type_t = 1 ; pub type r_th_lock_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_th_lock_type_t as RThreadLockType ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_th_lock_t { pub activating : :: std :: os :: raw :: c_int , pub active : bool , pub type_ : RThreadLockType , pub lock : pthread_mutex_t , } # [test] fn bindgen_test_layout_r_th_lock_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_lock_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_lock_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_th_lock_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_lock_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_lock_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . activating) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (activating))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . active) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (active))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_th_lock_t) , "::" , stringify ! (lock))) ; } impl Default for r_th_lock_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadLock = r_th_lock_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_th_cond_t { pub cond : pthread_cond_t , } # [test] fn bindgen_test_layout_r_th_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_cond_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_th_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_cond_t) , "::" , stringify ! (cond))) ; } impl Default for r_th_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThreadCond = r_th_cond_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_th_t { pub tid : pthread_t , pub lock : * mut RThreadLock , pub fun : RThreadFunction , pub user : * mut :: std :: os :: raw :: c_void , pub running : bool , pub breaked : :: std :: os :: raw :: c_int , pub delay : u32 , pub ready : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_th_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_th_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_th_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_th_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_th_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_th_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fun) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breaked) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ready) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_th_t) , "::" , stringify ! (ready))) ; } impl Default for r_th_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RThread = r_th_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannel { pub nextid : :: std :: os :: raw :: c_int , pub lock : * mut RThreadLock , pub sem : * mut RThreadSemaphore , pub stack : * mut RList , pub responses : * mut RList , pub consumer : * mut RThread , } # [test] fn bindgen_test_layout_RThreadChannel () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannel > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannel > () , 48usize , concat ! ("Size of: " , stringify ! (RThreadChannel))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannel > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (nextid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (sem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . responses) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (responses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consumer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RThreadChannel) , "::" , stringify ! (consumer))) ; } impl Default for RThreadChannel { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannelMessage { pub id : :: std :: os :: raw :: c_int , pub msg : * mut u8 , pub len : :: std :: os :: raw :: c_int , pub lock : * mut RThreadLock , pub sem : * mut RThreadSemaphore , } # [test] fn bindgen_test_layout_RThreadChannelMessage () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannelMessage > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannelMessage > () , 40usize , concat ! ("Size of: " , stringify ! (RThreadChannelMessage))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannelMessage > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannelMessage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . msg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (msg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sem) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelMessage) , "::" , stringify ! (sem))) ; } impl Default for RThreadChannelMessage { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RThreadChannelPromise { pub id : :: std :: os :: raw :: c_int , pub message : * mut RThreadChannelMessage , pub tc : * mut RThreadChannel , } # [test] fn bindgen_test_layout_RThreadChannelPromise () { const UNINIT : :: std :: mem :: MaybeUninit < RThreadChannelPromise > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RThreadChannelPromise > () , 24usize , concat ! ("Size of: " , stringify ! (RThreadChannelPromise))) ; assert_eq ! (:: std :: mem :: align_of :: < RThreadChannelPromise > () , 8usize , concat ! ("Alignment of " , stringify ! (RThreadChannelPromise))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . message) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (message))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RThreadChannelPromise) , "::" , stringify ! (tc))) ; } impl Default for RThreadChannelPromise { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_th_channel_read (tc : * mut RThreadChannel) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_free (cm : * mut RThreadChannelMessage) ; } extern "C" { pub fn r_th_channel_write (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_read (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_message_new (tc : * mut RThreadChannel , msg : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_new (consumer : RThreadFunction , user : * mut :: std :: os :: raw :: c_void) -> * mut RThreadChannel ; } extern "C" { pub fn r_th_channel_free (tc : * mut RThreadChannel) ; } extern "C" { pub fn r_th_channel_query (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) -> * mut RThreadChannelPromise ; } extern "C" { pub fn r_th_channel_post (tc : * mut RThreadChannel , cm : * mut RThreadChannelMessage) ; } extern "C" { pub fn r_th_channel_promise_new (tc : * mut RThreadChannel) -> * mut RThreadChannelPromise ; } extern "C" { pub fn r_th_channel_promise_wait (promise : * mut RThreadChannelPromise) -> * mut RThreadChannelMessage ; } extern "C" { pub fn r_th_channel_promise_free (cp : * mut RThreadChannelPromise) ; } extern "C" { pub fn r_th_new (fun : RThreadFunction , user : * mut :: std :: os :: raw :: c_void , delay : u32) -> * mut RThread ; } extern "C" { pub fn r_th_start (th : * mut RThread) -> bool ; } extern "C" { pub fn r_th_wait (th : * mut RThread) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_th_wait_async (th : * mut RThread) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_th_break (th : * mut RThread) ; } extern "C" { pub fn r_th_free (th : * mut RThread) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_set_running (th : * mut RThread , b : bool) ; } extern "C" { pub fn r_th_is_running (th : * mut RThread) -> bool ; } extern "C" { pub fn r_th_kill_free (th : * mut RThread) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_kill (th : * mut RThread , force : bool) -> bool ; } extern "C" { pub fn r_th_self () -> pthread_t ; } extern "C" { pub fn r_th_setname (th : * mut RThread , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_th_getname (th : * mut RThread , name : * mut :: std :: os :: raw :: c_char , len : usize) -> bool ; } extern "C" { pub fn r_th_setaffinity (th : * mut RThread , cpuid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_th_sem_new (initial : :: std :: os :: raw :: c_uint) -> * mut RThreadSemaphore ; } extern "C" { pub fn r_th_sem_free (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_sem_post (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_sem_wait (sem : * mut RThreadSemaphore) ; } extern "C" { pub fn r_th_lock_new (recursive : bool) -> * mut RThreadLock ; } extern "C" { pub fn r_th_lock_wait (th : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_tryenter (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_enter (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_leave (thl : * mut RThreadLock) -> bool ; } extern "C" { pub fn r_th_lock_free (thl : * mut RThreadLock) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_th_cond_new () -> * mut RThreadCond ; } extern "C" { pub fn r_th_cond_signal (cond : * mut RThreadCond) ; } extern "C" { pub fn r_th_cond_signal_all (cond : * mut RThreadCond) ; } extern "C" { pub fn r_th_cond_wait (cond : * mut RThreadCond , lock : * mut RThreadLock) ; } extern "C" { pub fn r_th_cond_free (cond : * mut RThreadCond) ; } extern "C" { pub fn r_atomic_store (data : * mut :: std :: os :: raw :: c_int , v : bool) ; } extern "C" { pub fn r_atomic_exchange (data : * mut :: std :: os :: raw :: c_int , v : bool) -> bool ; } pub const r_log_level_R_LOG_LEVEL_FATAL : r_log_level = 0 ; pub const r_log_level_R_LOG_LEVEL_ERROR : r_log_level = 1 ; pub const r_log_level_R_LOG_LEVEL_INFO : r_log_level = 2 ; pub const r_log_level_R_LOG_LEVEL_WARN : r_log_level = 3 ; pub const r_log_level_R_LOG_LEVEL_TODO : r_log_level = 4 ; pub const r_log_level_R_LOG_LEVEL_DEBUG : r_log_level = 5 ; pub const r_log_level_R_LOG_LEVEL_TRACE : r_log_level = 6 ; pub const r_log_level_R_LOG_LEVEL_LAST : r_log_level = 7 ; pub type r_log_level = :: std :: os :: raw :: c_uint ; pub use self :: r_log_level as RLogLevel ; pub type RLogCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , type_ : :: std :: os :: raw :: c_int , origin : * const :: std :: os :: raw :: c_char , msg : * const :: std :: os :: raw :: c_char) -> bool > ; extern "C" { pub fn r_log_init () -> bool ; } extern "C" { pub fn r_log_fini () ; } extern "C" { pub fn r_log_match (level : :: std :: os :: raw :: c_int , origin : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_log_message (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , func : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_log_vmessage (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , func : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) ; } extern "C" { pub fn r_log_add_callback (cb : RLogCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_log_del_callback (cb : RLogCallback) ; } extern "C" { pub fn r_log_set_file (expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_log_set_filter (expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_log_set_colors (show_colors : bool) ; } extern "C" { pub fn r_log_show_origin (show_origin : bool) ; } extern "C" { pub fn r_log_show_source (show_source : bool) ; } extern "C" { pub fn r_log_set_quiet (be_quiet : bool) ; } extern "C" { pub fn r_log_set_level (level : RLogLevel) ; } extern "C" { pub fn r_log_show_ts (ts : bool) ; } extern "C" { pub fn r_log_get_level () -> RLogLevel ; } extern "C" { pub fn r_log_get_traplevel () -> RLogLevel ; } extern "C" { pub fn r_log_set_traplevel (level : RLogLevel) ; } extern "C" { pub fn r_log_set_callback (cbfunc : RLogCallback) ; } extern "C" { pub fn r_log_level_tostring (i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_log_level_fromstring (arg1 : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_log_level_tocolor (i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_log (funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : u32 , level : RLogLevel , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_vlog (funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : u32 , level : RLogLevel , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , args : * mut __va_list_tag) ; } extern "C" { pub fn r_assert_log (level : RLogLevel , origin : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) ; } pub type REvent = r_event_t ; pub type REventCallback = :: std :: option :: Option < unsafe extern "C" fn (ev : * mut REvent , type_ : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_event_hook_t { pub event_type : u32 , pub cb : REventCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_event_hook_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_event_hook_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_event_hook_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_event_hook_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_event_hook_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_event_hook_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_type) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (event_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_event_hook_t) , "::" , stringify ! (user))) ; } impl Default for r_event_hook_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REventHook = r_event_hook_t ; pub type RVecREventHook = r_vec_RVecREventHook_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_event_t { pub user : * mut :: std :: os :: raw :: c_void , pub __bindgen_padding_0 : u64 , pub all_events : RVecREventHook , pub known_events : [RVecREventHook ; 124usize] , pub other_events : * mut [u64 ; 11usize] , pub lock : * mut RThreadLock , } # [test] fn bindgen_test_layout_r_event_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_event_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_event_t > () , 4032usize , concat ! ("Size of: " , stringify ! (r_event_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_event_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_event_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . all_events) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (all_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . known_events) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (known_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other_events) as usize - ptr as usize } , 4016usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (other_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 4024usize , concat ! ("Offset of field: " , stringify ! (r_event_t) , "::" , stringify ! (lock))) ; } impl Default for r_event_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_event_new (user : * mut :: std :: os :: raw :: c_void) -> * mut REvent ; } extern "C" { pub fn r_event_free (ev : * mut REvent) ; } extern "C" { pub fn r_event_hook (ev : * mut REvent , type_ : u32 , cb : REventCallback , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_event_unhook (ev : * mut REvent , event_hook : u32 , cb : REventCallback) -> bool ; } extern "C" { pub fn r_event_send (ev : * mut REvent , type_ : u32 , data : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug)] pub struct r_arena_block_t { pub next : * mut r_arena_block_t , pub used : usize , pub capacity : usize , pub data : __IncompleteArrayField < u8 > , } # [test] fn bindgen_test_layout_r_arena_block_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arena_block_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arena_block_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_arena_block_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arena_block_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arena_block_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arena_block_t) , "::" , stringify ! (data))) ; } impl Default for r_arena_block_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArenaBlock = r_arena_block_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arena_t { pub current : * mut RArenaBlock , pub first : * mut RArenaBlock , pub block_size : usize , pub total_allocated : usize , pub default_alignment : usize , } # [test] fn bindgen_test_layout_r_arena_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arena_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arena_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_arena_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arena_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arena_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (block_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total_allocated) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (total_allocated))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_alignment) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arena_t) , "::" , stringify ! (default_alignment))) ; } impl Default for r_arena_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArena = r_arena_t ; extern "C" { pub fn r_arena_create () -> * mut RArena ; } extern "C" { pub fn r_arena_create_with (block_size : usize) -> * mut RArena ; } extern "C" { pub fn r_arena_alloc (arena : * mut RArena , size : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_calloc (arena : * mut RArena , size : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_alloc_aligned (arena : * mut RArena , size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_calloc_aligned (arena : * mut RArena , size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_reset (arena : * mut RArena) ; } extern "C" { pub fn r_arena_destroy (arena : * mut RArena) ; } extern "C" { pub fn r_arena_push_str (arena : * mut RArena , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arena_push_strn (arena : * mut RArena , str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arena_push (arena : * mut RArena , mem : * const :: std :: os :: raw :: c_void , n : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_arena_used (arena : * const RArena) -> usize ; } extern "C" { pub fn r_arena_capacity (arena : * const RArena) -> usize ; } extern "C" { pub fn r_arena_block_count (arena : * const RArena) -> usize ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_interval_t { pub addr : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_interval_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_interval_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_interval_t) , "::" , stringify ! (size))) ; } pub type RInterval = r_interval_t ; extern "C" { pub fn r_signal_from_string (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_signal_tostring (code : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_signal_to_human (signum : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_signal_sigmask (how : :: std :: os :: raw :: c_int , newmask : * const sigset_t , oldmask : * mut sigset_t) ; } extern "C" { pub fn r_malloc_aligned (size : usize , alignment : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_free_aligned (p : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_rb_node_t { pub parent : * mut r_rb_node_t , pub child : [* mut r_rb_node_t ; 2usize] , pub red : bool , } # [test] fn bindgen_test_layout_r_rb_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_rb_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_rb_node_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_rb_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_rb_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_rb_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . child) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . red) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_rb_node_t) , "::" , stringify ! (red))) ; } impl Default for r_rb_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBNode = r_rb_node_t ; pub type RBTree = * mut RBNode ; pub type RBComparator = :: std :: option :: Option < unsafe extern "C" fn (incoming : * const :: std :: os :: raw :: c_void , in_tree : * const RBNode , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RBNodeFree = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RBNode , user : * mut :: std :: os :: raw :: c_void) > ; pub type RBNodeSum = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RBNode) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_rb_iter_t { pub len : usize , pub path : [* mut RBNode ; 62usize] , } # [test] fn bindgen_test_layout_r_rb_iter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_rb_iter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_rb_iter_t > () , 504usize , concat ! ("Size of: " , stringify ! (r_rb_iter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_rb_iter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_rb_iter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_rb_iter_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_rb_iter_t) , "::" , stringify ! (path))) ; } impl Default for r_rb_iter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBIter = r_rb_iter_t ; extern "C" { pub fn r_rbtree_aug_delete (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , freefn : RBNodeFree , free_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_aug_insert (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_aug_update_sum (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , sum : RBNodeSum) -> bool ; } extern "C" { pub fn r_rbtree_delete (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , cmp_user : * mut :: std :: os :: raw :: c_void , freefn : RBNodeFree , free_user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_rbtree_find (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_free (root : * mut RBNode , freefn : RBNodeFree , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_rbtree_insert (root : * mut * mut RBNode , data : * mut :: std :: os :: raw :: c_void , node : * mut RBNode , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_rbtree_lower_bound (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_upper_bound (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RBNode ; } extern "C" { pub fn r_rbtree_first (root : * mut RBNode) -> RBIter ; } extern "C" { pub fn r_rbtree_last (root : * mut RBNode) -> RBIter ; } extern "C" { pub fn r_rbtree_lower_bound_forward (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> RBIter ; } extern "C" { pub fn r_rbtree_upper_bound_backward (root : * mut RBNode , data : * mut :: std :: os :: raw :: c_void , cmp : RBComparator , user : * mut :: std :: os :: raw :: c_void) -> RBIter ; } extern "C" { pub fn r_rbtree_iter_next (it : * mut RBIter) ; } extern "C" { pub fn r_rbtree_iter_prev (it : * mut RBIter) ; } pub const RXmlRet_R_XML_EEOF : RXmlRet = - 5 ; pub const RXmlRet_R_XML_EREF : RXmlRet = - 4 ; pub const RXmlRet_R_XML_ECLOSE : RXmlRet = - 3 ; pub const RXmlRet_R_XML_ESTACK : RXmlRet = - 2 ; pub const RXmlRet_R_XML_ESYN : RXmlRet = - 1 ; pub const RXmlRet_R_XML_OK : RXmlRet = 0 ; pub const RXmlRet_R_XML_ELEMSTART : RXmlRet = 1 ; pub const RXmlRet_R_XML_CONTENT : RXmlRet = 2 ; pub const RXmlRet_R_XML_ELEMEND : RXmlRet = 3 ; pub const RXmlRet_R_XML_ATTRSTART : RXmlRet = 4 ; pub const RXmlRet_R_XML_ATTRVAL : RXmlRet = 5 ; pub const RXmlRet_R_XML_ATTREND : RXmlRet = 6 ; pub const RXmlRet_R_XML_PISTART : RXmlRet = 7 ; pub const RXmlRet_R_XML_PICONTENT : RXmlRet = 8 ; pub const RXmlRet_R_XML_PIEND : RXmlRet = 9 ; pub type RXmlRet = :: std :: os :: raw :: c_int ; pub const r_xml_state_t_R_XML_STATE_STRING : r_xml_state_t = 0 ; pub const r_xml_state_t_R_XML_STATE_ATTR0 : r_xml_state_t = 1 ; pub const r_xml_state_t_R_XML_STATE_ATTR1 : r_xml_state_t = 2 ; pub const r_xml_state_t_R_XML_STATE_ATTR2 : r_xml_state_t = 3 ; pub const r_xml_state_t_R_XML_STATE_ATTR3 : r_xml_state_t = 4 ; pub const r_xml_state_t_R_XML_STATE_ATTR4 : r_xml_state_t = 5 ; pub const r_xml_state_t_R_XML_STATE_CD0 : r_xml_state_t = 6 ; pub const r_xml_state_t_R_XML_STATE_CD1 : r_xml_state_t = 7 ; pub const r_xml_state_t_R_XML_STATE_CD2 : r_xml_state_t = 8 ; pub const r_xml_state_t_R_XML_STATE_COMMENT0 : r_xml_state_t = 9 ; pub const r_xml_state_t_R_XML_STATE_COMMENT1 : r_xml_state_t = 10 ; pub const r_xml_state_t_R_XML_STATE_COMMENT2 : r_xml_state_t = 11 ; pub const r_xml_state_t_R_XML_STATE_COMMENT3 : r_xml_state_t = 12 ; pub const r_xml_state_t_R_XML_STATE_COMMENT4 : r_xml_state_t = 13 ; pub const r_xml_state_t_R_XML_STATE_DT0 : r_xml_state_t = 14 ; pub const r_xml_state_t_R_XML_STATE_DT1 : r_xml_state_t = 15 ; pub const r_xml_state_t_R_XML_STATE_DT2 : r_xml_state_t = 16 ; pub const r_xml_state_t_R_XML_STATE_DT3 : r_xml_state_t = 17 ; pub const r_xml_state_t_R_XML_STATE_DT4 : r_xml_state_t = 18 ; pub const r_xml_state_t_R_XML_STATE_ELEM0 : r_xml_state_t = 19 ; pub const r_xml_state_t_R_XML_STATE_ELEM1 : r_xml_state_t = 20 ; pub const r_xml_state_t_R_XML_STATE_ELEM2 : r_xml_state_t = 21 ; pub const r_xml_state_t_R_XML_STATE_ELEM3 : r_xml_state_t = 22 ; pub const r_xml_state_t_R_XML_STATE_ENC0 : r_xml_state_t = 23 ; pub const r_xml_state_t_R_XML_STATE_ENC1 : r_xml_state_t = 24 ; pub const r_xml_state_t_R_XML_STATE_ENC2 : r_xml_state_t = 25 ; pub const r_xml_state_t_R_XML_STATE_ENC3 : r_xml_state_t = 26 ; pub const r_xml_state_t_R_XML_STATE_ETAG0 : r_xml_state_t = 27 ; pub const r_xml_state_t_R_XML_STATE_ETAG1 : r_xml_state_t = 28 ; pub const r_xml_state_t_R_XML_STATE_ETAG2 : r_xml_state_t = 29 ; pub const r_xml_state_t_R_XML_STATE_INIT : r_xml_state_t = 30 ; pub const r_xml_state_t_R_XML_STATE_le0 : r_xml_state_t = 31 ; pub const r_xml_state_t_R_XML_STATE_le1 : r_xml_state_t = 32 ; pub const r_xml_state_t_R_XML_STATE_le2 : r_xml_state_t = 33 ; pub const r_xml_state_t_R_XML_STATE_le3 : r_xml_state_t = 34 ; pub const r_xml_state_t_R_XML_STATE_LEE1 : r_xml_state_t = 35 ; pub const r_xml_state_t_R_XML_STATE_LEE2 : r_xml_state_t = 36 ; pub const r_xml_state_t_R_XML_STATE_LEQ0 : r_xml_state_t = 37 ; pub const r_xml_state_t_R_XML_STATE_MISC0 : r_xml_state_t = 38 ; pub const r_xml_state_t_R_XML_STATE_MISC1 : r_xml_state_t = 39 ; pub const r_xml_state_t_R_XML_STATE_MISC2 : r_xml_state_t = 40 ; pub const r_xml_state_t_R_XML_STATE_MISC2a : r_xml_state_t = 41 ; pub const r_xml_state_t_R_XML_STATE_MISC3 : r_xml_state_t = 42 ; pub const r_xml_state_t_R_XML_STATE_PI0 : r_xml_state_t = 43 ; pub const r_xml_state_t_R_XML_STATE_PI1 : r_xml_state_t = 44 ; pub const r_xml_state_t_R_XML_STATE_PI2 : r_xml_state_t = 45 ; pub const r_xml_state_t_R_XML_STATE_PI3 : r_xml_state_t = 46 ; pub const r_xml_state_t_R_XML_STATE_PI4 : r_xml_state_t = 47 ; pub const r_xml_state_t_R_XML_STATE_STD0 : r_xml_state_t = 48 ; pub const r_xml_state_t_R_XML_STATE_STD1 : r_xml_state_t = 49 ; pub const r_xml_state_t_R_XML_STATE_STD2 : r_xml_state_t = 50 ; pub const r_xml_state_t_R_XML_STATE_STD3 : r_xml_state_t = 51 ; pub const r_xml_state_t_R_XML_STATE_VER0 : r_xml_state_t = 52 ; pub const r_xml_state_t_R_XML_STATE_VER1 : r_xml_state_t = 53 ; pub const r_xml_state_t_R_XML_STATE_VER2 : r_xml_state_t = 54 ; pub const r_xml_state_t_R_XML_STATE_VER3 : r_xml_state_t = 55 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL0 : r_xml_state_t = 56 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL1 : r_xml_state_t = 57 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL2 : r_xml_state_t = 58 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL3 : r_xml_state_t = 59 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL4 : r_xml_state_t = 60 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL5 : r_xml_state_t = 61 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL6 : r_xml_state_t = 62 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL7 : r_xml_state_t = 63 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL8 : r_xml_state_t = 64 ; pub const r_xml_state_t_R_XML_STATE_XMLDECL9 : r_xml_state_t = 65 ; pub type r_xml_state_t = :: std :: os :: raw :: c_uint ; pub use self :: r_xml_state_t as RXmlState ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_xml_t { pub elem : * mut :: std :: os :: raw :: c_char , pub data : [:: std :: os :: raw :: c_char ; 8usize] , pub attr : * mut :: std :: os :: raw :: c_char , pub pi : * mut :: std :: os :: raw :: c_char , pub byte : u64 , pub total : u64 , pub line : u32 , pub state : RXmlState , pub stack : * mut u8 , pub stacksize : usize , pub stacklen : usize , pub reflen : :: std :: os :: raw :: c_uint , pub quote : :: std :: os :: raw :: c_uint , pub nextstate : :: std :: os :: raw :: c_int , pub ignore : :: std :: os :: raw :: c_uint , pub string : * mut u8 , } # [test] fn bindgen_test_layout_r_xml_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_xml_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_xml_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_xml_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_xml_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_xml_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (elem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pi) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (pi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byte) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (total))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacksize) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stacksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacklen) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (stacklen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflen) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (reflen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quote) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (quote))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextstate) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (nextstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (ignore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_xml_t) , "::" , stringify ! (string))) ; } impl Default for r_xml_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RXml = r_xml_t ; extern "C" { pub fn r_xml_init (arg1 : * mut RXml , arg2 : * mut :: std :: os :: raw :: c_void , arg3 : usize) ; } extern "C" { pub fn r_xml_parse (arg1 : * mut RXml , arg2 : :: std :: os :: raw :: c_int) -> RXmlRet ; } extern "C" { pub fn r_xml_new (stacksize : :: std :: os :: raw :: c_int) -> * mut RXml ; } extern "C" { pub fn r_xml_free (arg1 : * mut RXml) ; } extern "C" { pub fn r_xml_indent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xml_eof (arg1 : * mut RXml) -> RXmlRet ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_crbtree_node { pub link : [* mut r_crbtree_node ; 2usize] , pub parent : * mut r_crbtree_node , pub red : u32 , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_crbtree_node () { const UNINIT : :: std :: mem :: MaybeUninit < r_crbtree_node > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_crbtree_node > () , 40usize , concat ! ("Size of: " , stringify ! (r_crbtree_node))) ; assert_eq ! (:: std :: mem :: align_of :: < r_crbtree_node > () , 8usize , concat ! ("Alignment of " , stringify ! (r_crbtree_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . link) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (link))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . red) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (red))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_node) , "::" , stringify ! (data))) ; } impl Default for r_crbtree_node { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRBNode = r_crbtree_node ; pub type RRBComparator = :: std :: option :: Option < unsafe extern "C" fn (incoming : * mut :: std :: os :: raw :: c_void , in_ : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RRBFree = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_crbtree_t { pub root : * mut RRBNode , pub size : usize , pub free : RRBFree , } # [test] fn bindgen_test_layout_r_crbtree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_crbtree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_crbtree_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_crbtree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_crbtree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_crbtree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_crbtree_t) , "::" , stringify ! (free))) ; } impl Default for r_crbtree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRBTree = r_crbtree_t ; extern "C" { pub fn r_crbtree_new (freefn : RRBFree) -> * mut RRBTree ; } extern "C" { pub fn r_crbtree_clear (tree : * mut RRBTree) ; } extern "C" { pub fn r_crbtree_free (tree : * mut RRBTree) ; } extern "C" { pub fn r_crbtree_find_node (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut RRBNode ; } extern "C" { pub fn r_crbtree_find (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_crbtree_insert (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_crbtree_take (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_crbtree_delete (tree : * mut RRBTree , data : * mut :: std :: os :: raw :: c_void , cmp : RRBComparator , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_crbtree_first_node (tree : * mut RRBTree) -> * mut RRBNode ; } extern "C" { pub fn r_crbtree_last_node (tree : * mut RRBTree) -> * mut RRBNode ; } extern "C" { pub fn r_rbnode_next (node : * mut RRBNode) -> * mut RRBNode ; } extern "C" { pub fn r_rbnode_prev (node : * mut RRBNode) -> * mut RRBNode ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_interval_node_t { pub node : RBNode , pub start : u64 , pub end : u64 , pub max_end : u64 , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_interval_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_node_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_interval_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . node) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_end) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (max_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_interval_node_t) , "::" , stringify ! (data))) ; } impl Default for r_interval_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIntervalNode = r_interval_node_t ; pub type RIntervalNodeFree = :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_interval_tree_t { pub root : * mut RIntervalNode , pub free : RIntervalNodeFree , } # [test] fn bindgen_test_layout_r_interval_tree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_interval_tree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_interval_tree_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_interval_tree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_interval_tree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_interval_tree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_interval_tree_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_interval_tree_t) , "::" , stringify ! (free))) ; } impl Default for r_interval_tree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIntervalTree = r_interval_tree_t ; extern "C" { pub fn r_interval_tree_init (tree : * mut RIntervalTree , free : RIntervalNodeFree) ; } extern "C" { pub fn r_interval_tree_fini (tree : * mut RIntervalTree) ; } extern "C" { pub fn r_interval_tree_insert (tree : * mut RIntervalTree , start : u64 , end : u64 , data : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_delete (tree : * mut RIntervalTree , node : * mut RIntervalNode , free : bool) -> bool ; } extern "C" { pub fn r_interval_tree_resize (tree : * mut RIntervalTree , node : * mut RIntervalNode , new_start : u64 , new_end : u64) -> bool ; } extern "C" { pub fn r_interval_tree_first_at (tree : * mut RIntervalTree , start : u64) -> RBIter ; } extern "C" { pub fn r_interval_tree_node_at (tree : * mut RIntervalTree , start : u64) -> * mut RIntervalNode ; } extern "C" { pub fn r_interval_tree_node_at_data (tree : * mut RIntervalTree , start : u64 , data : * mut :: std :: os :: raw :: c_void) -> * mut RIntervalNode ; } pub type RIntervalIterCb = :: std :: option :: Option < unsafe extern "C" fn (node : * mut RIntervalNode , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_interval_tree_all_at (tree : * mut RIntervalTree , start : u64 , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_all_in (tree : * mut RIntervalTree , value : u64 , end_inclusive : bool , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_interval_tree_all_intersect (tree : * mut RIntervalTree , start : u64 , end : u64 , end_inclusive : bool , cb : RIntervalIterCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_big_t { pub array : [u32 ; 128usize] , pub sign : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_num_big_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_big_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_big_t > () , 516usize , concat ! ("Size of: " , stringify ! (r_num_big_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_big_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_num_big_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . array) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_big_t) , "::" , stringify ! (array))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_num_big_t) , "::" , stringify ! (sign))) ; } impl Default for r_num_big_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNumBig = r_num_big_t ; extern "C" { pub fn r_big_new () -> * mut RNumBig ; } extern "C" { pub fn r_big_free (b : * mut RNumBig) ; } extern "C" { pub fn r_big_init (b : * mut RNumBig) ; } extern "C" { pub fn r_big_fini (b : * mut RNumBig) ; } extern "C" { pub fn r_big_from_int (b : * mut RNumBig , v : i64) ; } extern "C" { pub fn r_big_to_int (b : * mut RNumBig) -> i64 ; } extern "C" { pub fn r_big_from_hexstr (b : * mut RNumBig , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_big_to_hexstr (b : * mut RNumBig) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_big_assign (dst : * mut RNumBig , src : * mut RNumBig) ; } extern "C" { pub fn r_big_add (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_sub (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_mul (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_div (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_mod (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_divmod (c : * mut RNumBig , d : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_and (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_or (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_xor (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig) ; } extern "C" { pub fn r_big_lshift (c : * mut RNumBig , a : * mut RNumBig , nbits : usize) ; } extern "C" { pub fn r_big_rshift (c : * mut RNumBig , a : * mut RNumBig , nbits : usize) ; } extern "C" { pub fn r_big_cmp (a : * mut RNumBig , b : * mut RNumBig) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_big_is_zero (a : * mut RNumBig) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_big_inc (a : * mut RNumBig) ; } extern "C" { pub fn r_big_dec (a : * mut RNumBig) ; } extern "C" { pub fn r_big_powm (c : * mut RNumBig , a : * mut RNumBig , b : * mut RNumBig , m : * mut RNumBig) ; } extern "C" { pub fn r_big_isqrt (c : * mut RNumBig , a : * mut RNumBig) ; } extern "C" { pub fn r_base32_encode (data : * const u8 , input_length : usize , output_length : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_base32_decode (data : * const :: std :: os :: raw :: c_char , input_length : usize , output_length : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_base64_encode (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base64_decode (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base64_decode_dyn (in_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , olen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_base64_encode_dyn (in_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_base91_encode (bout : * mut :: std :: os :: raw :: c_char , bin : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_base91_decode (bout : * mut u8 , bin : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mmap_t { pub buf : * mut u8 , pub base : u64 , pub len : :: std :: os :: raw :: c_int , pub fd : :: std :: os :: raw :: c_int , pub rw : :: std :: os :: raw :: c_int , pub filename : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_mmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mmap_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_mmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rw) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (rw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_mmap_t) , "::" , stringify ! (filename))) ; } impl Default for r_mmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMmap = r_mmap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mem_pool_t { pub nodes : * mut * mut u8 , pub ncount : :: std :: os :: raw :: c_int , pub npool : :: std :: os :: raw :: c_int , pub nodesize : :: std :: os :: raw :: c_int , pub poolsize : :: std :: os :: raw :: c_int , pub poolcount : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_mem_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mem_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mem_pool_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_mem_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mem_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mem_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ncount) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (ncount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . npool) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (npool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodesize) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (nodesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . poolsize) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (poolsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . poolcount) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_t) , "::" , stringify ! (poolcount))) ; } impl Default for r_mem_pool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMemoryPool = r_mem_pool_t ; extern "C" { pub fn r_mem_get_num (b : * const u8 , size : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_mem_pool_deinit (pool : * mut RMemoryPool) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_new (nodesize : :: std :: os :: raw :: c_int , poolsize : :: std :: os :: raw :: c_int , poolcount : :: std :: os :: raw :: c_int) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_free (pool : * mut RMemoryPool) -> * mut RMemoryPool ; } extern "C" { pub fn r_mem_pool_alloc (pool : * mut RMemoryPool) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_dup (s : * const :: std :: os :: raw :: c_void , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_set (ch : u8 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_alloc (sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_mem_free (arg1 : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_mem_zero (arg1 : * mut :: std :: os :: raw :: c_void , arg2 : usize) ; } extern "C" { pub fn r_mem_reverse (b : * mut u8 , l : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_protect (ptr : * mut :: std :: os :: raw :: c_void , size : :: std :: os :: raw :: c_int , prot : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_mem_set_num (dest : * mut u8 , dest_size : :: std :: os :: raw :: c_int , num : u64) -> bool ; } extern "C" { pub fn r_mem_eq (a : * mut u8 , b : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_copybits (dst : * mut u8 , src : * const u8 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_copybits_delta (dst : * mut u8 , doff : :: std :: os :: raw :: c_int , src : * const u8 , soff : :: std :: os :: raw :: c_int , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_copyloop (dest : * mut u8 , orig : * const u8 , dsize : :: std :: os :: raw :: c_int , osize : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_swaporcopy (dest : * mut u8 , src : * const u8 , len : :: std :: os :: raw :: c_int , big_endian : bool) ; } extern "C" { pub fn r_mem_swapendian (dest : * mut u8 , orig : * const u8 , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_mem_swap (buf : * mut u8 , buf_len : usize) ; } extern "C" { pub fn r_mem_cmp_mask (dest : * const u8 , orig : * const u8 , mask : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_mem (haystack : * const u8 , hlen : :: std :: os :: raw :: c_int , needle : * const u8 , nlen : :: std :: os :: raw :: c_int) -> * const u8 ; } extern "C" { pub fn r_mem_mem_aligned (haystack : * const u8 , hlen : :: std :: os :: raw :: c_int , needle : * const u8 , nlen : :: std :: os :: raw :: c_int , align : :: std :: os :: raw :: c_int) -> * const u8 ; } extern "C" { pub fn r_mem_count (addr : * mut * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_is_printable (a : * const u8 , la : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_is_zero (b : * const u8 , l : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_mem_from_binstring (str_ : * const :: std :: os :: raw :: c_char , buf : * mut u8 , len : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_mem_to_binstring (str_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RBuffer = r_buf_t ; pub type RBufferInit = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , user : * const :: std :: os :: raw :: c_void) -> bool > ; pub type RBufferFini = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> bool > ; pub type RBufferRead = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , buf : * mut u8 , len : u64) -> i64 > ; pub type RBufferWrite = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , buf : * const u8 , len : u64) -> i64 > ; pub type RBufferGetSize = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> u64 > ; pub type RBufferResize = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , newsize : u64) -> bool > ; pub type RBufferSeek = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , addr : i64 , whence : :: std :: os :: raw :: c_int) -> i64 > ; pub type RBufferGetWholeBuf = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer , sz : * mut u64) -> * mut u8 > ; pub type RBufferFreeWholeBuf = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) > ; pub type RBufferNonEmptyList = :: std :: option :: Option < unsafe extern "C" fn (b : * mut RBuffer) -> * mut RList > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_buffer_methods_t { pub init : RBufferInit , pub fini : RBufferFini , pub read : RBufferRead , pub write : RBufferWrite , pub get_size : RBufferGetSize , pub resize : RBufferResize , pub seek : RBufferSeek , pub get_whole_buf : RBufferGetWholeBuf , pub free_whole_buf : RBufferFreeWholeBuf , pub nonempty_list : RBufferNonEmptyList , } # [test] fn bindgen_test_layout_r_buffer_methods_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buffer_methods_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buffer_methods_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_buffer_methods_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buffer_methods_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buffer_methods_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (get_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_whole_buf) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (get_whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_whole_buf) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (free_whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nonempty_list) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_buffer_methods_t) , "::" , stringify ! (nonempty_list))) ; } pub type RBufferMethods = r_buffer_methods_t ; pub const RBufferType_R_BUFFER_FILE : RBufferType = 0 ; pub const RBufferType_R_BUFFER_IO : RBufferType = 1 ; pub const RBufferType_R_BUFFER_BYTES : RBufferType = 2 ; pub const RBufferType_R_BUFFER_MMAP : RBufferType = 3 ; pub const RBufferType_R_BUFFER_SPARSE : RBufferType = 4 ; pub const RBufferType_R_BUFFER_REF : RBufferType = 5 ; pub const RBufferType_R_BUFFER_CACHE : RBufferType = 6 ; pub const RBufferType_R_BUFFER_COUNT : RBufferType = 7 ; pub type RBufferType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_buf_file_t { pub fd : :: std :: os :: raw :: c_int , pub tmp : [u8 ; 8usize] , } # [test] fn bindgen_test_layout_r_buf_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_file_t > () , 12usize , concat ! ("Size of: " , stringify ! (r_buf_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_file_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_buf_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_file_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmp) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_buf_file_t) , "::" , stringify ! (tmp))) ; } pub type RBufferFile = r_buf_file_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_io_t { pub iob : * mut r_io_bind_t , pub fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_buf_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_io_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_io_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_io_t) , "::" , stringify ! (fd))) ; } impl Default for r_buf_io_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferIO = r_buf_io_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_bytes_t { pub buf : * mut u8 , pub length : u64 , pub offset : u64 , pub is_bufowner : bool , } # [test] fn bindgen_test_layout_r_buf_bytes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_bytes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_bytes_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_buf_bytes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_bytes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_bytes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_bufowner) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_bytes_t) , "::" , stringify ! (is_bufowner))) ; } impl Default for r_buf_bytes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferBytes = r_buf_bytes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_mmap_t { pub offset : u64 , pub mmap : * mut RMmap , } # [test] fn bindgen_test_layout_r_buf_mmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_mmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_mmap_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_mmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_mmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_mmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_mmap_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mmap) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_mmap_t) , "::" , stringify ! (mmap))) ; } impl Default for r_buf_mmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferMmap = r_buf_mmap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_sparse_t { pub sparse : * mut RList , pub offset : u64 , } # [test] fn bindgen_test_layout_r_buf_sparse_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_sparse_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_sparse_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_buf_sparse_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_sparse_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_sparse_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sparse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_sparse_t) , "::" , stringify ! (sparse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_sparse_t) , "::" , stringify ! (offset))) ; } impl Default for r_buf_sparse_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferSparse = r_buf_sparse_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_ref_t { pub parent : * mut RBuffer , pub cur : u64 , pub base : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_buf_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_ref_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_buf_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_ref_t) , "::" , stringify ! (size))) ; } impl Default for r_buf_ref_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferRef = r_buf_ref_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_buf_cache_t { pub sb : * mut RBuffer , pub is_bufowner : bool , pub length : u64 , pub cl : * mut r_io_cache_layer_t , pub offset : u64 , pub buf : * mut u8 , } # [test] fn bindgen_test_layout_r_buf_cache_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_cache_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_cache_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_buf_cache_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_cache_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_cache_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_bufowner) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (is_bufowner))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cl) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (cl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_buf_cache_t) , "::" , stringify ! (buf))) ; } impl Default for r_buf_cache_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBufferCache = r_buf_cache_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_buf_t { pub methods : * const RBufferMethods , pub __bindgen_anon_1 : r_buf_t__bindgen_ty_1 , pub whole_buf : * mut u8 , pub readonly : bool , pub Oxff_priv : u8 , pub refctr : :: std :: os :: raw :: c_int , pub type_ : RBufferType , } # [repr (C)] # [derive (Copy , Clone)] pub union r_buf_t__bindgen_ty_1 { pub rb_file : * mut RBufferFile , pub rb_io : * mut RBufferIO , pub rb_bytes : * mut RBufferBytes , pub rb_mmap : * mut RBufferMmap , pub rb_sparse : * mut RBufferSparse , pub rb_ref : * mut RBufferRef , pub rb_cache : * mut RBufferCache , } # [test] fn bindgen_test_layout_r_buf_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_buf_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_io) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_bytes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_mmap) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_mmap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_sparse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_sparse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_ref) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_ref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_cache) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t__bindgen_ty_1) , "::" , stringify ! (rb_cache))) ; } impl Default for r_buf_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_buf_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_buf_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_buf_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_buf_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_buf_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_buf_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (methods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . whole_buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (whole_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readonly) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (readonly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Oxff_priv) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (Oxff_priv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refctr) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (refctr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_buf_t) , "::" , stringify ! (type_))) ; } impl Default for r_buf_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_buf_new () -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_io (iob : * mut :: std :: os :: raw :: c_void , fd : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_bytes (bytes : * const u8 , len : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_string (msg : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_pointers (bytes : * const u8 , len : u64 , steal : bool) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_file (file : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_with_buf (b : * mut RBuffer) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_from_file (file : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_slice (b : * mut RBuffer , offset : u64 , size : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_empty (len : u64) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_mmap (file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int) -> * mut RBuffer ; } extern "C" { pub fn r_buf_new_sparse (Oxff : u8) -> * mut RBuffer ; } extern "C" { pub fn r_buf_describe (b : * mut RBuffer) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_new_with_cache (b : * mut RBuffer , steal : bool) -> * mut RBuffer ; } extern "C" { pub fn r_buf_dump (buf : * mut RBuffer , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_buf_set_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_string (b : * mut RBuffer , str_ : * const :: std :: os :: raw :: c_char) -> i64 ; } extern "C" { pub fn r_buf_append_buf (b : * mut RBuffer , a : * mut RBuffer) -> bool ; } extern "C" { pub fn r_buf_append_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_nbytes (b : * mut RBuffer , length : u64) -> bool ; } extern "C" { pub fn r_buf_append_ut8 (b : * mut RBuffer , n : u8) -> bool ; } extern "C" { pub fn r_buf_append_ut16 (b : * mut RBuffer , n : u16) -> bool ; } extern "C" { pub fn r_buf_append_buf_slice (b : * mut RBuffer , a : * mut RBuffer , offset : u64 , size : u64) -> bool ; } extern "C" { pub fn r_buf_append_ut32 (b : * mut RBuffer , n : u32) -> bool ; } extern "C" { pub fn r_buf_append_ut64 (b : * mut RBuffer , n : u64) -> bool ; } extern "C" { pub fn r_buf_prepend_bytes (b : * mut RBuffer , buf : * const u8 , length : u64) -> bool ; } extern "C" { pub fn r_buf_insert_bytes (b : * mut RBuffer , addr : u64 , buf : * const u8 , length : u64) -> i64 ; } extern "C" { pub fn r_buf_tostring (b : * mut RBuffer) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_drain (b : * mut RBuffer , length : * mut u64) -> * mut u8 ; } extern "C" { pub fn r_buf_get_string (b : * mut RBuffer , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_buf_read (b : * mut RBuffer , buf : * mut u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_read_all (b : * mut RBuffer , blen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_buf_read8 (b : * mut RBuffer) -> u8 ; } extern "C" { pub fn r_buf_fread (b : * mut RBuffer , buf : * mut u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_read_at (b : * mut RBuffer , addr : u64 , buf : * mut u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_read8_at (b : * mut RBuffer , addr : u64) -> u8 ; } extern "C" { pub fn r_buf_tell (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_seek (b : * mut RBuffer , addr : i64 , whence : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_fread_at (b : * mut RBuffer , addr : u64 , buf : * mut u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_write (b : * mut RBuffer , buf : * const u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_fwrite (b : * mut RBuffer , buf : * const u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_at (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_write_at (b : * mut RBuffer , addr : u64 , buf : * const u8 , len : u64) -> i64 ; } extern "C" { pub fn r_buf_fwrite_at (b : * mut RBuffer , addr : u64 , buf : * const u8 , fmt : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_buf_data (b : * mut RBuffer , size : * mut u64) -> * const u8 ; } extern "C" { pub fn r_buf_size (b : * mut RBuffer) -> u64 ; } extern "C" { pub fn r_buf_resize (b : * mut RBuffer , newsize : u64) -> bool ; } extern "C" { pub fn r_buf_ref (b : * mut RBuffer) -> * mut RBuffer ; } extern "C" { pub fn r_buf_free (b : * mut RBuffer) ; } extern "C" { pub fn r_buf_fini (b : * mut RBuffer) ; } extern "C" { pub fn r_buf_nonempty_list (b : * mut RBuffer) -> * mut RList ; } extern "C" { pub fn r_buf_uleb128 (b : * mut RBuffer , v : * mut u64) -> i64 ; } extern "C" { pub fn r_buf_sleb128 (b : * mut RBuffer , v : * mut i64) -> i64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bitmap_t { pub length : :: std :: os :: raw :: c_int , pub bitmap : * mut u64 , } # [test] fn bindgen_test_layout_r_bitmap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bitmap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bitmap_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bitmap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bitmap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bitmap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bitmap_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitmap) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bitmap_t) , "::" , stringify ! (bitmap))) ; } impl Default for r_bitmap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBitmap = r_bitmap_t ; extern "C" { pub fn r_bitmap_new (len : usize) -> * mut RBitmap ; } extern "C" { pub fn r_bitmap_set_bytes (b : * mut RBitmap , buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bitmap_free (b : * mut RBitmap) ; } extern "C" { pub fn r_bitmap_set (b : * mut RBitmap , bit : usize) ; } extern "C" { pub fn r_bitmap_unset (b : * mut RBitmap , bit : usize) ; } extern "C" { pub fn r_bitmap_test (b : * mut RBitmap , bit : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_time_today () -> u64 ; } extern "C" { pub fn r_time_now () -> u64 ; } extern "C" { pub fn r_time_now_mono () -> u64 ; } extern "C" { pub fn r_time_secs_tostring (timeStamp : time_t) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_time_usecs_tostring (ts : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_time_beats (ts : u64 , sub : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_time_dos_today (timeStamp : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_hfs_today (hfsts : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_unix_today (unxts : u32 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_time_w32_today (ts : u64 , tz : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_asctime_r (tm : * const tm , buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_ctime_r (timer : * const time_t , buf : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [doc = " profiling"] # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_prof_t { pub when : timeval , pub result : f64 , } # [test] fn bindgen_test_layout_r_prof_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_prof_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_prof_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_prof_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_prof_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_prof_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . when) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_prof_t) , "::" , stringify ! (when))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . result) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_prof_t) , "::" , stringify ! (result))) ; } # [doc = " profiling"] pub type RProfile = r_prof_t ; extern "C" { pub fn r_prof_start (p : * mut RProfile) ; } extern "C" { pub fn r_prof_end (p : * mut RProfile) -> f64 ; } extern "C" { pub fn r_debruijn_pattern (size : :: std :: os :: raw :: c_int , start : :: std :: os :: raw :: c_int , charset : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debruijn_offset (value : u64 , is_big_endian : bool) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_type_enum { pub name : * mut :: std :: os :: raw :: c_char , pub val : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_type_enum () { const UNINIT : :: std :: mem :: MaybeUninit < r_type_enum > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_type_enum > () , 16usize , concat ! ("Size of: " , stringify ! (r_type_enum))) ; assert_eq ! (:: std :: mem :: align_of :: < r_type_enum > () , 8usize , concat ! ("Alignment of " , stringify ! (r_type_enum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_type_enum) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_type_enum) , "::" , stringify ! (val))) ; } impl Default for r_type_enum { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTypeEnum = r_type_enum ; pub const RTypeKind_R_TYPE_INVALID : RTypeKind = - 1 ; pub const RTypeKind_R_TYPE_BASIC : RTypeKind = 0 ; pub const RTypeKind_R_TYPE_ENUM : RTypeKind = 1 ; pub const RTypeKind_R_TYPE_STRUCT : RTypeKind = 2 ; pub const RTypeKind_R_TYPE_UNION : RTypeKind = 3 ; pub const RTypeKind_R_TYPE_TYPEDEF : RTypeKind = 4 ; pub const RTypeKind_R_TYPE_FUNCTION : RTypeKind = 5 ; pub const RTypeKind_R_TYPE_CLASS : RTypeKind = 6 ; pub type RTypeKind = :: std :: os :: raw :: c_int ; extern "C" { pub fn r_type_set (TDB : * mut Sdb , at : u64 , field : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_type_del (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_type_kind (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) -> RTypeKind ; } extern "C" { pub fn r_type_enum_member (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char , member : * const :: std :: os :: raw :: c_char , val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_enum_getbitfield (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char , val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_get_enum (TDB : * mut Sdb , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_type_enum_free (member : * mut RTypeEnum) ; } extern "C" { pub fn r_type_get_bitsize (TDB : * mut Sdb , type_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_type_get_by_offset (TDB : * mut Sdb , offset : u64) -> * mut RList ; } extern "C" { pub fn r_type_get_struct_memb (TDB : * mut Sdb , type_ : * const :: std :: os :: raw :: c_char , offset : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_link_at (TDB : * mut Sdb , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_set_link (TDB : * mut Sdb , val : * const :: std :: os :: raw :: c_char , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_unlink (TDB : * mut Sdb , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_link_offset (TDB : * mut Sdb , val : * const :: std :: os :: raw :: c_char , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_format (TDB : * mut Sdb , t : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_exist (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_func_cc (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_ret (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_args_count (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_type_func_args_type (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char , i : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_args_name (TDB : * mut Sdb , func_name : * const :: std :: os :: raw :: c_char , i : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_guess (TDB : * mut Sdb , func_name : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_type_func_name (types : * mut Sdb , fname : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_is_abspath (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_c (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_directory (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_regular (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_is_executable (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_truncate (filename : * const :: std :: os :: raw :: c_char , newsize : u64) -> bool ; } extern "C" { pub fn r_file_new (root : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_size (str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_file_root (root : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_mmap_fd (map : * mut RMmap , filename : * const :: std :: os :: raw :: c_char , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_mmap (file : * const :: std :: os :: raw :: c_char , rw : bool , base : u64) -> * mut RMmap ; } extern "C" { pub fn r_file_mmap_read (m : * mut RMmap , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_mmap_resize (m : * mut RMmap , newsize : u64) -> bool ; } extern "C" { pub fn r_file_mmap_write (file : * const :: std :: os :: raw :: c_char , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_mmap_size (m : * mut RMmap) -> u64 ; } extern "C" { pub fn r_file_mmap_free (m : * mut RMmap) ; } extern "C" { pub fn r_file_chmod (file : * const :: std :: os :: raw :: c_char , mod_ : * const :: std :: os :: raw :: c_char , recursive : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_temp (prefix : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_path (bin : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_binsh () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_basename (path : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_dirname (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_abspath_rel (cwd : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_abspath (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_inflate (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , srcConsumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_inflate_raw (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , srcConsumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_inflate_lz4 (src : * const u8 , srcLen : :: std :: os :: raw :: c_int , consumed : * mut :: std :: os :: raw :: c_int , dstLen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_file_gzslurp (str_ : * const :: std :: os :: raw :: c_char , outlen : * mut :: std :: os :: raw :: c_int , origonfail : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_stdin_slurp (sz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_stdin_readline (sz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp (str_ : * const :: std :: os :: raw :: c_char , usz : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_range (str_ : * const :: std :: os :: raw :: c_char , off : u64 , sz : :: std :: os :: raw :: c_int , osz : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_random_line (file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_random_line_count (file : * const :: std :: os :: raw :: c_char , linecount : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_mmap (file : * const :: std :: os :: raw :: c_char , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_slurp_hexpairs (str_ : * const :: std :: os :: raw :: c_char , usz : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_file_dump (file : * const :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , append : bool) -> bool ; } extern "C" { pub fn r_file_dump_line (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , msg : * const :: std :: os :: raw :: c_char , replace : bool) -> bool ; } extern "C" { pub fn r_file_touch (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_hexdump (file : * const :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , append : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_file_rm (file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_exists (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_extension (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_fexists (fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_file_slurp_line (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , context : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_lines (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_slurp_lines_from_bottom (file : * const :: std :: os :: raw :: c_char , line : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_temp_ex (prefix : * const :: std :: os :: raw :: c_char , ex : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_mkstemp (prefix : * const :: std :: os :: raw :: c_char , oname : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_file_tmpdir () -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_readlink (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_copy (src : * const :: std :: os :: raw :: c_char , dst : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_move (src : * const :: std :: os :: raw :: c_char , dst : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_glob (globbed_path : * const :: std :: os :: raw :: c_char , maxdepth : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_file_lsrf (dir : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_file_is_newer (f1 : * const :: std :: os :: raw :: c_char , f2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_rm_rf (dir : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_file_home (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_file_homef (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_configdir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_datadir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_xdg_cachedir (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_pair2bin (arg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2bin_until_new (in_ : * const :: std :: os :: raw :: c_char , out : * mut * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2binmask (in_ : * const :: std :: os :: raw :: c_char , out : * mut u8 , mask : * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_str2bin (in_ : * const :: std :: os :: raw :: c_char , out : * mut u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin2str (in_ : * const u8 , len : :: std :: os :: raw :: c_int , out : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin2strdup (in_ : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_to_byte (val : * mut u8 , c : u8) -> bool ; } extern "C" { pub fn r_hex_str_is_valid (s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hex_bin_truncate (in_ : u64 , n : :: std :: os :: raw :: c_int) -> i64 ; } extern "C" { pub fn r_hex_from_c (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_code (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_no_code (code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py_str (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_py_array (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_c_str (out : * mut :: std :: os :: raw :: c_char , code : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_c_array (out : * mut :: std :: os :: raw :: c_char , code : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hex_from_byte (val : * mut :: std :: os :: raw :: c_char , c : u8) ; } extern "C" { pub fn r_name_validate_print (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_validate_char (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_validate_first (ch : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_check (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter_ro (a : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_flag (s : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter_print (s : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_name_filter (name : * mut :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_name_filter_dup (name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_shell (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_name_filter_quoted_shell (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RNumCalcValue { pub d : f64 , pub n : u64 , } # [test] fn bindgen_test_layout_RNumCalcValue () { const UNINIT : :: std :: mem :: MaybeUninit < RNumCalcValue > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RNumCalcValue > () , 16usize , concat ! ("Size of: " , stringify ! (RNumCalcValue))) ; assert_eq ! (:: std :: mem :: align_of :: < RNumCalcValue > () , 8usize , concat ! ("Alignment of " , stringify ! (RNumCalcValue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . d) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RNumCalcValue) , "::" , stringify ! (d))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RNumCalcValue) , "::" , stringify ! (n))) ; } pub const RNumCalcToken_RNCNAME : RNumCalcToken = 0 ; pub const RNumCalcToken_RNCNUMBER : RNumCalcToken = 1 ; pub const RNumCalcToken_RNCEND : RNumCalcToken = 2 ; pub const RNumCalcToken_RNCINC : RNumCalcToken = 3 ; pub const RNumCalcToken_RNCDEC : RNumCalcToken = 4 ; pub const RNumCalcToken_RNCLT : RNumCalcToken = 5 ; pub const RNumCalcToken_RNCGT : RNumCalcToken = 6 ; pub const RNumCalcToken_RNCBNOT : RNumCalcToken = 7 ; pub const RNumCalcToken_RNCBAND : RNumCalcToken = 8 ; pub const RNumCalcToken_RNCBOR : RNumCalcToken = 9 ; pub const RNumCalcToken_RNCBXOR : RNumCalcToken = 10 ; pub const RNumCalcToken_RNCBXNOR : RNumCalcToken = 11 ; pub const RNumCalcToken_RNCBEQ : RNumCalcToken = 12 ; pub const RNumCalcToken_RNCBNEQ : RNumCalcToken = 13 ; pub const RNumCalcToken_RNCPLUS : RNumCalcToken = 43 ; pub const RNumCalcToken_RNCMINUS : RNumCalcToken = 45 ; pub const RNumCalcToken_RNCMUL : RNumCalcToken = 42 ; pub const RNumCalcToken_RNCDIV : RNumCalcToken = 47 ; pub const RNumCalcToken_RNCMOD : RNumCalcToken = 37 ; pub const RNumCalcToken_RNCNEG : RNumCalcToken = 126 ; pub const RNumCalcToken_RNCAND : RNumCalcToken = 38 ; pub const RNumCalcToken_RNCOR : RNumCalcToken = 124 ; pub const RNumCalcToken_RNCXOR : RNumCalcToken = 94 ; pub const RNumCalcToken_RNCPRINT : RNumCalcToken = 59 ; pub const RNumCalcToken_RNCASSIGN : RNumCalcToken = 61 ; pub const RNumCalcToken_RNCLEFTP : RNumCalcToken = 40 ; pub const RNumCalcToken_RNCRIGHTP : RNumCalcToken = 41 ; pub const RNumCalcToken_RNCSHL : RNumCalcToken = 60 ; pub const RNumCalcToken_RNCSHR : RNumCalcToken = 62 ; pub const RNumCalcToken_RNCROL : RNumCalcToken = 35 ; pub const RNumCalcToken_RNCROR : RNumCalcToken = 36 ; pub type RNumCalcToken = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_calc_t { pub curr_tok : RNumCalcToken , pub number_value : RNumCalcValue , pub string_value : [:: std :: os :: raw :: c_char ; 1024usize] , pub errors : :: std :: os :: raw :: c_int , pub oc : :: std :: os :: raw :: c_char , pub calc_err : * const :: std :: os :: raw :: c_char , pub calc_i : :: std :: os :: raw :: c_int , pub calc_buf : * const :: std :: os :: raw :: c_char , pub calc_len : :: std :: os :: raw :: c_int , pub under_calc : bool , } # [test] fn bindgen_test_layout_r_num_calc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_calc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_calc_t > () , 1088usize , concat ! ("Size of: " , stringify ! (r_num_calc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_calc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_num_calc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curr_tok) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (curr_tok))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (number_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_value) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (string_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . errors) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (errors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oc) as usize - ptr as usize } , 1052usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (oc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_err) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_i) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_buf) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_len) as usize - ptr as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (calc_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . under_calc) as usize - ptr as usize } , 1084usize , concat ! ("Offset of field: " , stringify ! (r_num_calc_t) , "::" , stringify ! (under_calc))) ; } impl Default for r_num_calc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNumCalc = r_num_calc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_num_t { pub callback : :: std :: option :: Option < unsafe extern "C" fn (userptr : * mut r_num_t , str_ : * const :: std :: os :: raw :: c_char , ok : * mut bool) -> u64 > , pub cb_from_value : :: std :: option :: Option < unsafe extern "C" fn (userptr : * mut r_num_t , value : u64 , ok : * mut bool) -> * const :: std :: os :: raw :: c_char > , pub value : u64 , pub fvalue : f64 , pub userptr : * mut :: std :: os :: raw :: c_void , pub dbz : :: std :: os :: raw :: c_int , # [doc = " division by zero happened"] pub nc : RNumCalc , } # [test] fn bindgen_test_layout_r_num_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_num_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_num_t > () , 1136usize , concat ! ("Size of: " , stringify ! (r_num_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_num_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_num_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_from_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (cb_from_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fvalue) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (fvalue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . userptr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (userptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbz) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (dbz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nc) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_num_t) , "::" , stringify ! (nc))) ; } impl Default for r_num_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RNum = r_num_t ; pub type RNumCallback = :: std :: option :: Option < unsafe extern "C" fn (self_ : * mut r_num_t , str_ : * const :: std :: os :: raw :: c_char , ok : * mut bool) -> u64 > ; pub type RNumCallback2 = :: std :: option :: Option < unsafe extern "C" fn (self_ : * mut r_num_t , arg1 : u64 , ok : * mut bool) -> * const :: std :: os :: raw :: c_char > ; extern "C" { pub fn r_num_new (cb : RNumCallback , cb2 : RNumCallback2 , ptr : * mut :: std :: os :: raw :: c_void) -> * mut RNum ; } extern "C" { pub fn r_num_free (num : * mut RNum) ; } extern "C" { pub fn r_num_units (buf : * mut :: std :: os :: raw :: c_char , len : usize , number : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_conditional (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_chs (cylinder : :: std :: os :: raw :: c_int , head : :: std :: os :: raw :: c_int , sector : :: std :: os :: raw :: c_int , sectorsize : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_num_is_valid_input (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_get_input_value (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_list_join (str_ : * mut RList , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_get_name (num : * mut RNum , n : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_as_string (___ : * mut RNum , n : u64 , printable_only : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_tail (num : * mut RNum , addr : u64 , hex : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_tail_base (num : * mut RNum , addr : u64 , off : u64) -> u64 ; } extern "C" { pub fn r_num_segaddr (addr : u64 , sb : u64 , sg : :: std :: os :: raw :: c_int , a : * mut u32 , b : * mut u32) -> bool ; } extern "C" { pub fn r_num_minmax_swap (a : * mut u64 , b : * mut u64) ; } extern "C" { pub fn r_num_minmax_swap_i (a : * mut :: std :: os :: raw :: c_int , b : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_num_get (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math_err (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char , err : * mut * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_num_math_index (num : * mut RNum , p : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_num_to_bits (out : * mut :: std :: os :: raw :: c_char , num : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_to_ternary (out : * mut :: std :: os :: raw :: c_char , num : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_rand (max : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_genmask (max : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_num_irand () ; } extern "C" { pub fn r_num_between (num : * mut RNum , input_value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_is_op (c : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_num_str_len (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_str_split (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_num_str_split_list (str_ : * mut :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_num_dup (n : u64) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_num_cos (a : f64) -> f64 ; } extern "C" { pub fn r_num_sin (a : f64) -> f64 ; } extern "C" { pub fn r_num_bit_count (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_clz32 (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_clz64 (val : u64) -> usize ; } extern "C" { pub fn r_num_bit_ctz32 (val : u32) -> usize ; } extern "C" { pub fn r_num_bit_ctz64 (val : u64) -> usize ; } extern "C" { pub fn r_num_get_double (num : * mut RNum , str_ : * const :: std :: os :: raw :: c_char) -> f64 ; } extern "C" { pub fn r_num_float_to_bf16 (f : f32) -> u16 ; } extern "C" { pub fn r_num_bf16_to_float (b : u16) -> f32 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableColumnType { pub name : * const :: std :: os :: raw :: c_char , pub cmp : RListComparator , } # [test] fn bindgen_test_layout_RTableColumnType () { const UNINIT : :: std :: mem :: MaybeUninit < RTableColumnType > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableColumnType > () , 16usize , concat ! ("Size of: " , stringify ! (RTableColumnType))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableColumnType > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableColumnType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableColumnType) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTableColumnType) , "::" , stringify ! (cmp))) ; } impl Default for RTableColumnType { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableColumn { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut RTableColumnType , pub align : :: std :: os :: raw :: c_int , pub width : :: std :: os :: raw :: c_int , pub maxWidth : :: std :: os :: raw :: c_int , pub forceUppercase : bool , pub total : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RTableColumn () { const UNINIT : :: std :: mem :: MaybeUninit < RTableColumn > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableColumn > () , 40usize , concat ! ("Size of: " , stringify ! (RTableColumn))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableColumn > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableColumn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxWidth) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (maxWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forceUppercase) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (forceUppercase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . total) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RTableColumn) , "::" , stringify ! (total))) ; } impl Default for RTableColumn { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RListInfo { pub name : * mut :: std :: os :: raw :: c_char , pub pitv : RInterval , pub vitv : RInterval , pub perm : :: std :: os :: raw :: c_int , pub extra : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RListInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RListInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RListInfo > () , 56usize , concat ! ("Size of: " , stringify ! (RListInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RListInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RListInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pitv) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (pitv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vitv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (vitv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extra) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RListInfo) , "::" , stringify ! (extra))) ; } impl Default for RListInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVecListInfo = r_vec_RVecListInfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTableRow { pub items : * mut RList , } # [test] fn bindgen_test_layout_RTableRow () { const UNINIT : :: std :: mem :: MaybeUninit < RTableRow > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTableRow > () , 8usize , concat ! ("Size of: " , stringify ! (RTableRow))) ; assert_eq ! (:: std :: mem :: align_of :: < RTableRow > () , 8usize , concat ! ("Alignment of " , stringify ! (RTableRow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . items) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTableRow) , "::" , stringify ! (items))) ; } impl Default for RTableRow { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RTable { pub cons : * mut :: std :: os :: raw :: c_void , pub name : * mut :: std :: os :: raw :: c_char , pub rows : * mut RList , pub cols : * mut RList , pub totalCols : :: std :: os :: raw :: c_int , pub showMode : u16 , pub adjustedCols : bool , pub maxColumnWidth : :: std :: os :: raw :: c_int , pub wrapColumns : bool , } # [test] fn bindgen_test_layout_RTable () { const UNINIT : :: std :: mem :: MaybeUninit < RTable > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RTable > () , 48usize , concat ! ("Size of: " , stringify ! (RTable))) ; assert_eq ! (:: std :: mem :: align_of :: < RTable > () , 8usize , concat ! ("Alignment of " , stringify ! (RTable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rows) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (cols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . totalCols) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (totalCols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . showMode) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (showMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . adjustedCols) as usize - ptr as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (adjustedCols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxColumnWidth) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (maxColumnWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wrapColumns) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (RTable) , "::" , stringify ! (wrapColumns))) ; } impl Default for RTable { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTableSelector = :: std :: option :: Option < unsafe extern "C" fn (acc : * mut RTableRow , new_row : * mut RTableRow , nth : :: std :: os :: raw :: c_int) > ; extern "C" { pub fn r_table_row_free (_row : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_table_column_free (_col : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_table_column_clone (col : * mut RTableColumn) -> * mut RTableColumn ; } extern "C" { pub fn r_table_type (name : * const :: std :: os :: raw :: c_char) -> * mut RTableColumnType ; } extern "C" { pub fn r_table_new (name : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } extern "C" { pub fn r_table_clone (t : * const RTable) -> * mut RTable ; } extern "C" { pub fn r_table_free (t : * mut RTable) ; } extern "C" { pub fn r_table_column_nth (t : * mut RTable , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_table_add_column (t : * mut RTable , type_ : * mut RTableColumnType , name : * const :: std :: os :: raw :: c_char , maxWidth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_table_set_columnsf (t : * mut RTable , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_row_new (items : * mut RList) -> * mut RTableRow ; } extern "C" { pub fn r_table_add_row (t : * mut RTable , name : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_add_rowf (t : * mut RTable , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_table_add_row_list (t : * mut RTable , items : * mut RList) ; } extern "C" { pub fn r_table_tofancystring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tosimplestring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tostring (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tosql (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tocsv (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tohtml (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_totsv (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tor2cmds (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_tojson (t : * mut RTable) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_help () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_table_filter (t : * mut RTable , nth : :: std :: os :: raw :: c_int , op : :: std :: os :: raw :: c_int , un : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_table_sort (t : * mut RTable , nth : :: std :: os :: raw :: c_int , inc : bool) ; } extern "C" { pub fn r_table_uniq (t : * mut RTable) ; } extern "C" { pub fn r_table_group (t : * mut RTable , nth : :: std :: os :: raw :: c_int , fcn : RTableSelector) ; } extern "C" { pub fn r_table_query (t : * mut RTable , q : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_table_hide_header (t : * mut RTable) ; } extern "C" { pub fn r_table_align (t : * mut RTable , nth : :: std :: os :: raw :: c_int , align : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_table_visual_list (table : * mut RTable , list : * mut RList , seek : u64 , len : u64 , width : :: std :: os :: raw :: c_int , va : bool) ; } extern "C" { pub fn r_table_visual_vec (table : * mut RTable , vec : * mut RVecListInfo , seek : u64 , len : u64 , width : :: std :: os :: raw :: c_int , va : bool) ; } extern "C" { pub fn r_table_push (t : * mut RTable) -> * mut RTable ; } extern "C" { pub fn r_table_pop (t : * mut RTable) -> * mut RTable ; } extern "C" { pub fn r_listinfo_new (name : * const :: std :: os :: raw :: c_char , pitv : RInterval , vitv : RInterval , perm : :: std :: os :: raw :: c_int , extra : * const :: std :: os :: raw :: c_char) -> * mut RListInfo ; } extern "C" { pub fn r_listinfo_free (info : * mut RListInfo) ; } extern "C" { pub fn r_table_columns (t : * mut RTable , cols : * mut RList) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_node_t { pub idx : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub out_nodes : * mut RList , pub in_nodes : * mut RList , pub all_neighbours : * mut RList , pub free : RListFree , } # [test] fn bindgen_test_layout_r_graph_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_node_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_graph_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . out_nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (out_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_nodes) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (in_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . all_neighbours) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (all_neighbours))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_graph_node_t) , "::" , stringify ! (free))) ; } impl Default for r_graph_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphNode = r_graph_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_edge_t { pub from : * mut RGraphNode , pub to : * mut RGraphNode , pub nth : i32 , } # [test] fn bindgen_test_layout_r_graph_edge_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_edge_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_edge_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_graph_edge_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_edge_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_edge_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_edge_t) , "::" , stringify ! (nth))) ; } impl Default for r_graph_edge_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphEdge = r_graph_edge_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_t { pub n_nodes : u32 , pub n_edges : u32 , pub last_index : i32 , pub nodes : * mut RList , } # [test] fn bindgen_test_layout_r_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_nodes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (n_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_edges) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (n_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_index) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (last_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_t) , "::" , stringify ! (nodes))) ; } impl Default for r_graph_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraph = r_graph_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_graph_visitor_t { pub discover_node : :: std :: option :: Option < unsafe extern "C" fn (n : * mut RGraphNode , vis : * mut r_graph_visitor_t) > , pub finish_node : :: std :: option :: Option < unsafe extern "C" fn (n : * mut RGraphNode , vis : * mut r_graph_visitor_t) > , pub tree_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub back_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub fcross_edge : :: std :: option :: Option < unsafe extern "C" fn (e : * const RGraphEdge , vis : * mut r_graph_visitor_t) > , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_graph_visitor_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_graph_visitor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_graph_visitor_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_graph_visitor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_graph_visitor_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_graph_visitor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discover_node) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (discover_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . finish_node) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (finish_node))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree_edge) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (tree_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . back_edge) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (back_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcross_edge) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (fcross_edge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_graph_visitor_t) , "::" , stringify ! (data))) ; } impl Default for r_graph_visitor_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGraphVisitor = r_graph_visitor_t ; extern "C" { pub fn r_graph_new () -> * mut RGraph ; } extern "C" { pub fn r_graph_free (g : * mut RGraph) ; } extern "C" { pub fn r_graph_get_node (g : * const RGraph , idx : :: std :: os :: raw :: c_uint) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_node_iter (g : * const RGraph , idx : :: std :: os :: raw :: c_uint) -> * mut RListIter ; } extern "C" { pub fn r_graph_reset (g : * mut RGraph) ; } extern "C" { pub fn r_graph_add_node (g : * mut RGraph , data : * mut :: std :: os :: raw :: c_void) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_add_nodef (g : * mut RGraph , data : * mut :: std :: os :: raw :: c_void , user_free : RListFree) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_del_node (g : * mut RGraph , n : * mut RGraphNode) ; } extern "C" { pub fn r_graph_add_edge (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode) ; } extern "C" { pub fn r_graph_add_edge_at (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode , nth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_graph_node_split_forward (g : * mut RGraph , split_me : * mut RGraphNode , data : * mut :: std :: os :: raw :: c_void) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_del_edge (g : * mut RGraph , from : * mut RGraphNode , to : * mut RGraphNode) ; } extern "C" { pub fn r_graph_get_neighbours (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_nth_neighbour (g : * const RGraph , n : * const RGraphNode , nth : :: std :: os :: raw :: c_int) -> * mut RGraphNode ; } extern "C" { pub fn r_graph_innodes (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_all_neighbours (g : * const RGraph , n : * const RGraphNode) -> * const RList ; } extern "C" { pub fn r_graph_get_nodes (g : * const RGraph) -> * const RList ; } extern "C" { pub fn r_graph_adjacent (g : * const RGraph , from : * const RGraphNode , to : * const RGraphNode) -> bool ; } extern "C" { pub fn r_graph_dfs_node (g : * mut RGraph , n : * mut RGraphNode , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dfs_node_reverse (g : * mut RGraph , n : * mut RGraphNode , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dfs (g : * mut RGraph , vis : * mut RGraphVisitor) ; } extern "C" { pub fn r_graph_dom_tree (graph : * mut RGraph , root : * mut RGraphNode) -> * mut RGraph ; } extern "C" { pub fn r_graph_pdom_tree (graph : * mut RGraph , root : * mut RGraphNode) -> * mut RGraph ; } pub const RPanelType_PANEL_TYPE_DEFAULT : RPanelType = 0 ; pub const RPanelType_PANEL_TYPE_MENU : RPanelType = 1 ; pub type RPanelType = :: std :: os :: raw :: c_uint ; pub type RPanelDirectionCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , direction : :: std :: os :: raw :: c_int) > ; pub type RPanelRotateCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , rev : bool) > ; pub type RPanelPrintCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , p : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_panel_pos_t { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_pos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_pos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_pos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_panel_pos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_pos_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_panel_pos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_panel_pos_t) , "::" , stringify ! (h))) ; } pub type RPanelPos = r_panel_pos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panel_model_t { pub directionCb : RPanelDirectionCallback , pub rotateCb : RPanelRotateCallback , pub print_cb : RPanelPrintCallback , pub type_ : RPanelType , pub cmd : * mut :: std :: os :: raw :: c_char , pub title : * mut :: std :: os :: raw :: c_char , pub bgcolor : * mut :: std :: os :: raw :: c_char , pub baseAddr : u64 , pub addr : u64 , pub cache : bool , pub cmdStrCache : * mut :: std :: os :: raw :: c_char , pub readOnly : * mut :: std :: os :: raw :: c_char , pub funcName : * mut :: std :: os :: raw :: c_char , pub filter : * mut * mut :: std :: os :: raw :: c_char , pub n_filter : :: std :: os :: raw :: c_int , pub rotate : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_model_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_model_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_model_t > () , 120usize , concat ! ("Size of: " , stringify ! (r_panel_model_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_model_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panel_model_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . directionCb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (directionCb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotateCb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (rotateCb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_cb) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (print_cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgcolor) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (bgcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baseAddr) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (baseAddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStrCache) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (cmdStrCache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readOnly) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (readOnly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . funcName) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (funcName))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_filter) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (n_filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotate) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_panel_model_t) , "::" , stringify ! (rotate))) ; } impl Default for r_panel_model_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelModel = r_panel_model_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_panel_view_t { pub pos : RPanelPos , pub prevPos : RPanelPos , pub sx : :: std :: os :: raw :: c_int , pub sy : :: std :: os :: raw :: c_int , pub curpos : :: std :: os :: raw :: c_int , pub refresh : bool , pub edge : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_panel_view_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_view_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_view_t > () , 52usize , concat ! ("Size of: " , stringify ! (r_panel_view_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_view_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_panel_view_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prevPos) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (prevPos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (sx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sy) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (sy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curpos) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (curpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refresh) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (refresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edge) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panel_view_t) , "::" , stringify ! (edge))) ; } pub type RPanelView = r_panel_view_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panel_t { pub model : * mut RPanelModel , pub view : * mut RPanelView , } # [test] fn bindgen_test_layout_r_panel_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panel_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panel_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_panel_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panel_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panel_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . model) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panel_t) , "::" , stringify ! (model))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . view) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panel_t) , "::" , stringify ! (view))) ; } impl Default for r_panel_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanel = r_panel_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_mem_pool_factory_t { pub limit : :: std :: os :: raw :: c_int , pub pools : * mut * mut RMemoryPool , } # [test] fn bindgen_test_layout_r_mem_pool_factory_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_mem_pool_factory_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_mem_pool_factory_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_mem_pool_factory_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_mem_pool_factory_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_mem_pool_factory_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_factory_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pools) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_mem_pool_factory_t) , "::" , stringify ! (pools))) ; } impl Default for r_mem_pool_factory_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPoolFactory = r_mem_pool_factory_t ; extern "C" { pub fn r_poolfactory_instance () -> * mut RPoolFactory ; } extern "C" { pub fn r_poolfactory_init (limit : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_poolfactory_new (limit : :: std :: os :: raw :: c_int) -> * mut RPoolFactory ; } extern "C" { pub fn r_poolfactory_alloc (pf : * mut RPoolFactory , nodesize : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_poolfactory_stats (pf : * mut RPoolFactory) ; } extern "C" { pub fn r_poolfactory_free (pf : * mut RPoolFactory) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RStrBuf { pub buf : [:: std :: os :: raw :: c_char ; 32usize] , pub len : usize , pub ptr : * mut :: std :: os :: raw :: c_char , pub ptrlen : usize , pub weakref : bool , } # [test] fn bindgen_test_layout_RStrBuf () { const UNINIT : :: std :: mem :: MaybeUninit < RStrBuf > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStrBuf > () , 64usize , concat ! ("Size of: " , stringify ! (RStrBuf))) ; assert_eq ! (:: std :: mem :: align_of :: < RStrBuf > () , 8usize , concat ! ("Alignment of " , stringify ! (RStrBuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrlen) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (ptrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weakref) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (RStrBuf) , "::" , stringify ! (weakref))) ; } impl Default for RStrBuf { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_strbuf_new (s : * const :: std :: os :: raw :: c_char) -> * mut RStrBuf ; } extern "C" { pub fn r_strbuf_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut RStrBuf ; } extern "C" { pub fn r_strbuf_set (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_slice (sb : * mut RStrBuf , from : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_strbuf_setbin (sb : * mut RStrBuf , s : * const u8 , len : usize) -> bool ; } extern "C" { pub fn r_strbuf_trim (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_getbin (sb : * mut RStrBuf , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_strbuf_setf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_vsetf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_append (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_append_n (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char , l : usize) -> bool ; } extern "C" { pub fn r_strbuf_pad (sb : * mut RStrBuf , ch : :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_strbuf_prepend (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_prepend_n (sb : * mut RStrBuf , s : * const :: std :: os :: raw :: c_char , l : usize) -> bool ; } extern "C" { pub fn r_strbuf_appendf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_vappendf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> bool ; } extern "C" { pub fn r_strbuf_prependf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_vprependf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> bool ; } extern "C" { pub fn r_strbuf_get (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_drain (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_drain_nofree (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_replace (sb : * mut RStrBuf , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_strbuf_replacef (sb : * mut RStrBuf , key : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_strbuf_length (sb : * mut RStrBuf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strbuf_size (sb : * mut RStrBuf) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strbuf_free (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_fini (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_init (sb : * mut RStrBuf) ; } extern "C" { pub fn r_strbuf_tostring (sb : * mut RStrBuf) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_initf (sb : * mut RStrBuf , fmt : * const :: std :: os :: raw :: c_char , ...) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strbuf_copy (dst : * mut RStrBuf , src : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_equals (sa : * mut RStrBuf , sb : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_reserve (sb : * mut RStrBuf , len : usize) -> bool ; } extern "C" { pub fn r_strbuf_is_empty (sb : * mut RStrBuf) -> bool ; } extern "C" { pub fn r_strbuf_setptr (sb : * mut RStrBuf , p : * mut :: std :: os :: raw :: c_char , l : :: std :: os :: raw :: c_int) -> bool ; } pub const PJEncodingStr_PJ_ENCODING_STR_DEFAULT : PJEncodingStr = 0 ; pub const PJEncodingStr_PJ_ENCODING_STR_BASE64 : PJEncodingStr = 1 ; pub const PJEncodingStr_PJ_ENCODING_STR_HEX : PJEncodingStr = 2 ; pub const PJEncodingStr_PJ_ENCODING_STR_ARRAY : PJEncodingStr = 3 ; pub const PJEncodingStr_PJ_ENCODING_STR_STRIP : PJEncodingStr = 4 ; pub type PJEncodingStr = :: std :: os :: raw :: c_uint ; pub const PJEncodingNum_PJ_ENCODING_NUM_DEFAULT : PJEncodingNum = 0 ; pub const PJEncodingNum_PJ_ENCODING_NUM_STR : PJEncodingNum = 1 ; pub const PJEncodingNum_PJ_ENCODING_NUM_HEX : PJEncodingNum = 2 ; pub type PJEncodingNum = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct pj_t { pub sb : RStrBuf , pub is_first : bool , pub is_key : bool , pub comma : * const :: std :: os :: raw :: c_char , pub braces : [:: std :: os :: raw :: c_char ; 128usize] , pub level : :: std :: os :: raw :: c_int , pub str_encoding : PJEncodingStr , pub num_encoding : PJEncodingNum , } # [test] fn bindgen_test_layout_pj_t () { const UNINIT : :: std :: mem :: MaybeUninit < pj_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < pj_t > () , 224usize , concat ! ("Size of: " , stringify ! (pj_t))) ; assert_eq ! (:: std :: mem :: align_of :: < pj_t > () , 8usize , concat ! ("Alignment of " , stringify ! (pj_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_first) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (is_first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_key) as usize - ptr as usize } , 65usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (is_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comma) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (comma))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . braces) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (braces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . level) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_encoding) as usize - ptr as usize } , 212usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (str_encoding))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num_encoding) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (pj_t) , "::" , stringify ! (num_encoding))) ; } impl Default for pj_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type PJ = pj_t ; extern "C" { pub fn r_sandbox_opendir (path : * const :: std :: os :: raw :: c_char) -> * mut DIR ; } extern "C" { pub fn r_sandbox_truncate (fd : :: std :: os :: raw :: c_int , length : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_lseek (fd : :: std :: os :: raw :: c_int , addr : u64 , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_close (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_read (fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_write (fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_system (x : * const :: std :: os :: raw :: c_char , fork : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_creat (path : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sandbox_open (path : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_fopen (path : * const :: std :: os :: raw :: c_char , mode : * const :: std :: os :: raw :: c_char) -> * mut FILE ; } extern "C" { pub fn r_sandbox_chdir (path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_check_path (path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sandbox_kill (pid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_enable (e : bool) -> bool ; } extern "C" { pub fn r_sandbox_disable (e : bool) -> bool ; } extern "C" { pub fn r_sandbox_grain (mask : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sandbox_check (mask : :: std :: os :: raw :: c_int) -> bool ; } pub type RStackFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_stack_t { pub elems : * mut * mut :: std :: os :: raw :: c_void , pub n_elems : :: std :: os :: raw :: c_int , pub top : :: std :: os :: raw :: c_int , pub free : RStackFree , } # [test] fn bindgen_test_layout_r_stack_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_stack_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_stack_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_stack_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_stack_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_stack_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elems) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_elems) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (n_elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (top))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_stack_t) , "::" , stringify ! (free))) ; } impl Default for r_stack_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RStack = r_stack_t ; extern "C" { pub fn r_stack_new (n : u32) -> * mut RStack ; } extern "C" { pub fn r_stack_free (s : * mut RStack) ; } extern "C" { pub fn r_stack_is_empty (s : * mut RStack) -> bool ; } extern "C" { pub fn r_stack_newf (n : u32 , f : RStackFree) -> * mut RStack ; } extern "C" { pub fn r_stack_push (s : * mut RStack , el : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_stack_pop (s : * mut RStack) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_stack_size (s : * mut RStack) -> usize ; } extern "C" { pub fn r_stack_peek (s : * mut RStack) -> * mut :: std :: os :: raw :: c_void ; } pub const RStrEnc_R_STRING_ENC_LATIN1 : RStrEnc = 97 ; pub const RStrEnc_R_STRING_ENC_UTF8 : RStrEnc = 56 ; pub const RStrEnc_R_STRING_ENC_UTF16LE : RStrEnc = 117 ; pub const RStrEnc_R_STRING_ENC_UTF32LE : RStrEnc = 85 ; pub const RStrEnc_R_STRING_ENC_UTF16BE : RStrEnc = 98 ; pub const RStrEnc_R_STRING_ENC_UTF32BE : RStrEnc = 66 ; pub const RStrEnc_R_STRING_ENC_GUESS : RStrEnc = 103 ; pub type RStrEnc = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RString { pub str_ : * mut :: std :: os :: raw :: c_char , pub buf : [:: std :: os :: raw :: c_char ; 64usize] , pub len : :: std :: os :: raw :: c_int , pub ptr : * mut :: std :: os :: raw :: c_char , pub weak : bool , } # [test] fn bindgen_test_layout_RString () { const UNINIT : :: std :: mem :: MaybeUninit < RString > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RString > () , 96usize , concat ! ("Size of: " , stringify ! (RString))) ; assert_eq ! (:: std :: mem :: align_of :: < RString > () , 8usize , concat ! ("Alignment of " , stringify ! (RString))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (RString) , "::" , stringify ! (weak))) ; } impl Default for RString { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RStringSlice { pub from : u16 , pub to : u16 , } # [test] fn bindgen_test_layout_RStringSlice () { const UNINIT : :: std :: mem :: MaybeUninit < RStringSlice > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStringSlice > () , 4usize , concat ! ("Size of: " , stringify ! (RStringSlice))) ; assert_eq ! (:: std :: mem :: align_of :: < RStringSlice > () , 2usize , concat ! ("Alignment of " , stringify ! (RStringSlice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStringSlice) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (RStringSlice) , "::" , stringify ! (to))) ; } pub type RVecStringSlice = r_vec_RVecStringSlice_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_charset_rune_t { pub ch : * mut u8 , pub hx : * mut u8 , pub left : * mut r_charset_rune_t , pub right : * mut r_charset_rune_t , } # [test] fn bindgen_test_layout_r_charset_rune_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_charset_rune_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_charset_rune_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_charset_rune_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_charset_rune_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_charset_rune_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hx) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (hx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . left) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (left))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . right) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_charset_rune_t) , "::" , stringify ! (right))) ; } impl Default for r_charset_rune_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCharsetRune = r_charset_rune_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_charset_t { pub loaded : bool , pub db : * mut Sdb , pub db_char_to_hex : * mut Sdb , pub custom_charset : * mut RCharsetRune , pub encode_maxkeylen : usize , pub decode_maxkeylen : usize , } # [test] fn bindgen_test_layout_r_charset_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_charset_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_charset_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_charset_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_charset_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_charset_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loaded) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (loaded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db_char_to_hex) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (db_char_to_hex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . custom_charset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (custom_charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode_maxkeylen) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (encode_maxkeylen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode_maxkeylen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_charset_t) , "::" , stringify ! (decode_maxkeylen))) ; } impl Default for r_charset_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCharset = r_charset_t ; extern "C" { pub fn r_charset_new () -> * mut RCharset ; } extern "C" { pub fn r_charset_free (charset : * mut RCharset) ; } extern "C" { pub fn r_charset_rune_new (ch : * const u8 , hx : * const u8) -> * mut RCharsetRune ; } extern "C" { pub fn r_charset_rune_free (rcr : * mut RCharsetRune) ; } extern "C" { pub fn r_charset_encode_str (rc : * mut RCharset , out : * mut u8 , out_len : usize , in_ : * const u8 , in_len : usize , early_exit : bool) -> usize ; } extern "C" { pub fn r_charset_decode_str (rc : * mut RCharset , out : * mut u8 , out_len : usize , in_ : * const u8 , in_len : usize) -> usize ; } extern "C" { pub fn r_charset_open (c : * mut RCharset , cs : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_charset_use (c : * mut RCharset , cf : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_charset_list (c : * mut RCharset) -> * mut RList ; } extern "C" { pub fn r_charset_close (c : * mut RCharset) ; } extern "C" { pub fn r_str_repeat (ch : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_pad (pad : * mut :: std :: os :: raw :: c_char , padsz : usize , ch : :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rstr (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strstr_ansi (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rchr (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nchr (str_ : * const :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_closer_chr (b : * const :: std :: os :: raw :: c_char , s : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bounds (str_ : * const :: std :: os :: raw :: c_char , h : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_eq (s1 : * const :: std :: os :: raw :: c_char , s2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_eqi (s1 : * const :: std :: os :: raw :: c_char , s2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_crop (str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_uint , y : :: std :: os :: raw :: c_uint , x2 : :: std :: os :: raw :: c_uint , y2 : :: std :: os :: raw :: c_uint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_scale (r : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_range_in (r : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_str_size (s : * const :: std :: os :: raw :: c_char , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_len_utf8 (s : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_len_utf8_ansi (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_len_utf8char (s : * const :: std :: os :: raw :: c_char , left : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_utf8_charsize (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_utf8_charsize_prev (str_ : * const :: std :: os :: raw :: c_char , prev_len : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_utf8_charsize_last (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_filter_zeroline (str_ : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_utf8_codepoint (s : * const :: std :: os :: raw :: c_char , left : usize) -> usize ; } extern "C" { pub fn r_str_char_fullwidth (s : * const :: std :: os :: raw :: c_char , left : usize) -> bool ; } extern "C" { pub fn r_str_write (fd : :: std :: os :: raw :: c_int , b : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_sanitize (c : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_sanitize_sdb_key (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_casestr (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_firstbut (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_firstbut_escape (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_lastbut (s : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char , but : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_split (str_ : * mut :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_slice (str_ : * const :: std :: os :: raw :: c_char , s : RStringSlice) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_asciitable () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_chartable (c : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_split_vec (str_ : * const :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> * mut RVecStringSlice ; } extern "C" { pub fn r_str_split_list (str_ : * mut :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_str_split_duplist (str_ : * const :: std :: os :: raw :: c_char , c : * const :: std :: os :: raw :: c_char , trim : bool) -> * mut RList ; } extern "C" { pub fn r_str_split_lines (str_ : * mut :: std :: os :: raw :: c_char , count : * mut usize) -> * mut usize ; } extern "C" { pub fn r_str_replace (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_all (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_icase (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int , keep_case : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_replace_in (str_ : * mut :: std :: os :: raw :: c_char , sz : u32 , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_replace_thunked (str_ : * mut :: std :: os :: raw :: c_char , clean : * mut :: std :: os :: raw :: c_char , thunk : * mut :: std :: os :: raw :: c_int , clen : :: std :: os :: raw :: c_int , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char , g : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bits (strout : * mut :: std :: os :: raw :: c_char , buf : * const u8 , len : :: std :: os :: raw :: c_int , bitz : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_bits64 (strout : * mut :: std :: os :: raw :: c_char , in_ : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_bits_from_string (buf : * const :: std :: os :: raw :: c_char , bitz : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_str_rwx (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_ch (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char , g : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_char (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_replace_char_once (s : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_remove_char (str_ : * mut :: std :: os :: raw :: c_char , c : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_rwx_i (rwx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_fmtargs (fmt : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_arg_escape (arg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_arg_unescape (arg : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_argv (str_ : * const :: std :: os :: raw :: c_char , _argc : * mut :: std :: os :: raw :: c_int) -> * mut * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_argv_free (argv : * mut * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_new (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_fixspaces (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_snprintf (string : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_is_ascii (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_nextword (s : * mut :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_is_printable (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_printable_limited (str_ : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_str_is_printable_incl_newlines (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_appendlen (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char , slen : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_newvf (fmt : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_distance (a : * const :: std :: os :: raw :: c_char , b : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_newlen (str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_sysbits (v : RSysBits) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trunc_ellipsis (str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_bool (b : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_is_true (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_false (s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_is_bool (val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_ansi_chrn (str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ansi_strip (str_ : * mut :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_html_strip (ptr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_html_rgbparse (p : * const :: std :: os :: raw :: c_char , r : * mut u8 , g : * mut u8 , b : * mut u8 , a : * mut u8) -> bool ; } extern "C" { pub fn r_str_ansi_len (str_ : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_display_width (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_nlen (str_ : * const :: std :: os :: raw :: c_char , len : usize) -> usize ; } extern "C" { pub fn r_str_ansi_trim (str_ : * mut :: std :: os :: raw :: c_char , str_len : :: std :: os :: raw :: c_int , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_filter (str_ : * mut :: std :: os :: raw :: c_char , out : * mut * mut :: std :: os :: raw :: c_char , cposs : * mut * mut :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ansi_resetbg (str_ : * const :: std :: os :: raw :: c_char , bgcolor : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ansi_crop (str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_uint , y : :: std :: os :: raw :: c_uint , x2 : :: std :: os :: raw :: c_uint , y2 : :: std :: os :: raw :: c_uint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_count (string : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_char_count (string : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_word_get0set (stra : * mut :: std :: os :: raw :: c_char , stralen : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , newstr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_set0 (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_word_set0_stack (str_ : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_word_get0 (str_ : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_word_get_first (string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_emptylines (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_ntrim (str_ : * mut :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_md2txt (page : * const :: std :: os :: raw :: c_char , usecolor : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_wrap (str_ : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_dup (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_ndup (str_ : * const :: std :: os :: raw :: c_char , n : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_lines (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_head (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_head_ro (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_head_wp (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_trim_tail (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_trim_args (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_hash (str_ : * const :: std :: os :: raw :: c_char) -> u32 ; } extern "C" { pub fn r_str_hash64 (str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_str_trim_nc (str_ : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nstr (from : * const :: std :: os :: raw :: c_char , to : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_lchr (str_ : * const :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sub_str_lchr (str_ : * const :: std :: os :: raw :: c_char , start : :: std :: os :: raw :: c_int , end : :: std :: os :: raw :: c_int , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sub_str_rchr (str_ : * const :: std :: os :: raw :: c_char , start : :: std :: os :: raw :: c_int , end : :: std :: os :: raw :: c_int , chr : :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ichr (str_ : * mut :: std :: os :: raw :: c_char , chr : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ccmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char , ch : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_str_cmp_list (list : * const :: std :: os :: raw :: c_char , item : * const :: std :: os :: raw :: c_char , sep : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_casecmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_ncasecmp (dst : * const :: std :: os :: raw :: c_char , orig : * const :: std :: os :: raw :: c_char , n : usize) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_get (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_get_fail (str_ : * const :: std :: os :: raw :: c_char , failstr : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_getf (str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ndup (ptr : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_inject (begin : * mut :: std :: os :: raw :: c_char , end : * mut :: std :: os :: raw :: c_char , str_ : * mut :: std :: os :: raw :: c_char , maxlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_delta (p : * mut :: std :: os :: raw :: c_char , a : :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_filter (str_ : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_str_tok (str1 : * const :: std :: os :: raw :: c_char , b : :: std :: os :: raw :: c_char , len : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_tok_next (s : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_tok_r (str_ : * mut :: std :: os :: raw :: c_char , delim : * const :: std :: os :: raw :: c_char , save_ptr : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_mb_to_wc (buf : * const :: std :: os :: raw :: c_char) -> * mut wchar_t ; } extern "C" { pub fn r_str_wc_to_mb (buf : * const wchar_t) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_mb_to_wc_l (buf : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut wchar_t ; } extern "C" { pub fn r_str_wc_to_mb_l (buf : * const wchar_t , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_str_xy (s : * const :: std :: os :: raw :: c_char , word : * const :: std :: os :: raw :: c_char , prev : * const :: std :: os :: raw :: c_char , x : * mut :: std :: os :: raw :: c_int , y : * mut :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } pub type str_operation = :: std :: option :: Option < unsafe extern "C" fn (c : * mut :: std :: os :: raw :: c_char) > ; extern "C" { pub fn r_str_do_until_token (op : str_operation , str_ : * mut :: std :: os :: raw :: c_char , tok : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_reverse (str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_re_match (str_ : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_re_replace (str_ : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , sub : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_path_unescape (path : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_path_escape (path : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_unescape (buf : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_sanitize_r2 (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_raw (buf : * const u8 , sz : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_sh (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_sql (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_dot (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_latin1 (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool , colors : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf8 (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf8_keep_printable (buf : * const :: std :: os :: raw :: c_char , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf16le (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf32le (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf16be (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_utf32be (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , show_asciidot : bool , esc_bslash : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_byte_escape (p : * const :: std :: os :: raw :: c_char , dst : * mut * mut :: std :: os :: raw :: c_char , dot_nl : :: std :: os :: raw :: c_int , default_dot : bool , esc_bslash : bool) ; } extern "C" { pub fn r_str_format_msvc_argv (argc : usize , argv : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_uri_decode (buf : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_uri_encode (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_utf16_decode (s : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_utf16_to_utf8 (dst : * mut u8 , len_dst : :: std :: os :: raw :: c_int , src : * const u8 , len_src : :: std :: os :: raw :: c_int , little_endian : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_str_utf16_encode (s : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_json (s : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_escape_json_strip (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_encoded_json (buf : * const :: std :: os :: raw :: c_char , buf_size : :: std :: os :: raw :: c_int , encoding : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_r2_prefix (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_nlen (s : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_str_nlen_w (s : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int) -> usize ; } extern "C" { pub fn r_wstr_clen (s : * const :: std :: os :: raw :: c_char) -> usize ; } extern "C" { pub fn r_str_prepend (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_prefix_all (s : * const :: std :: os :: raw :: c_char , pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_append (ptr : * mut :: std :: os :: raw :: c_char , string : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_append_owned (ptr : * mut :: std :: os :: raw :: c_char , string : * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_appendf (ptr : * mut :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_appendch (x : * mut :: std :: os :: raw :: c_char , y : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_case (str_ : * mut :: std :: os :: raw :: c_char , up : bool) ; } extern "C" { pub fn r_str_trim_path (s : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_contains_macro (input_value : * const :: std :: os :: raw :: c_char) -> u8 ; } extern "C" { pub fn r_str_truncate_cmd (string : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_glob (str_ : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_between (str_ : * const :: std :: os :: raw :: c_char , prefix : * const :: std :: os :: raw :: c_char , suffix : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_startswith (str_ : * const :: std :: os :: raw :: c_char , needle : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_endswith (str_ : * const :: std :: os :: raw :: c_char , needle : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_isnumber (str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_str_last (in_ : * const :: std :: os :: raw :: c_char , ch : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_highlight (str_ : * mut :: std :: os :: raw :: c_char , word : * const :: std :: os :: raw :: c_char , color : * const :: std :: os :: raw :: c_char , color_reset : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_qrcode_gen (text : * const u8 , len : :: std :: os :: raw :: c_int , utf8 : bool , inverted : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_from_ut64 (val : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_stripLine (str_ : * mut :: std :: os :: raw :: c_char , key : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_str_list_join (str_ : * mut RList , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_array_join (a : * mut * const :: std :: os :: raw :: c_char , n : usize , sep : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_sep (base : * const :: std :: os :: raw :: c_char , sep : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_rsep (base : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char , sep : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_donut (size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_version (program : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_ss (msg : * const :: std :: os :: raw :: c_char , nl : * const :: std :: os :: raw :: c_char , cs : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_after (s : * mut :: std :: os :: raw :: c_char , c : :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_printf (buffer : * mut :: std :: os :: raw :: c_char , buffer_size : usize , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [doc = " __attribute__ ((format (printf, 3, 4)));"] pub fn r_str_scanf (buffer : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { # [doc = " __attribute__ ((format (scanf, 2, 3)));"] pub fn r_string_get (s : * const RString , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_string_new (is : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> RString ; } extern "C" { pub fn r_string_free (s : * mut RString) ; } extern "C" { pub fn r_string_from (is : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> RString ; } extern "C" { pub fn r_string_unweak (a : * mut RString) ; } extern "C" { pub fn r_string_trim (s : * mut RString) ; } extern "C" { pub fn r_string_newf (fmt : * const :: std :: os :: raw :: c_char , ...) -> RString ; } extern "C" { pub fn r_string_append (a : * mut RString , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_string_appendf (a : * mut RString , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_str_pseudo_transform (rules : * mut * const :: std :: os :: raw :: c_char , asm_str : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_str_pseudo_subvar (pseudo : * mut :: std :: os :: raw :: c_char , varmap : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_str_constpool_t { pub ht : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_str_constpool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_str_constpool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_str_constpool_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_str_constpool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_str_constpool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_str_constpool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_str_constpool_t) , "::" , stringify ! (ht))) ; } impl Default for r_str_constpool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RStrConstPool = r_str_constpool_t ; extern "C" { pub fn r_str_constpool_init (pool : * mut RStrConstPool) -> bool ; } extern "C" { pub fn r_str_constpool_fini (pool : * mut RStrConstPool) ; } extern "C" { pub fn r_str_constpool_get (pool : * mut RStrConstPool , str_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } pub type RPVectorComparator = :: std :: option :: Option < unsafe extern "C" fn (a : * const :: std :: os :: raw :: c_void , b : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RVectorFree = :: std :: option :: Option < unsafe extern "C" fn (e : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) > ; pub type RPVectorFree = :: std :: option :: Option < unsafe extern "C" fn (e : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vector_t { pub a : * mut :: std :: os :: raw :: c_void , pub len : usize , pub capacity : usize , pub elem_size : usize , pub free : RVectorFree , pub free_user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_vector_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vector_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_vector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_vector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (elem_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_vector_t) , "::" , stringify ! (free_user))) ; } impl Default for r_vector_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVector = r_vector_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pvector_t { pub v : RVector , } # [test] fn bindgen_test_layout_r_pvector_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pvector_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pvector_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_pvector_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pvector_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pvector_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pvector_t) , "::" , stringify ! (v))) ; } impl Default for r_pvector_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPVector = r_pvector_t ; extern "C" { pub fn r_vector_init (vec : * mut RVector , elem_size : usize , free : RVectorFree , free_user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_new (elem_size : usize , free : RVectorFree , free_user : * mut :: std :: os :: raw :: c_void) -> * mut RVector ; } extern "C" { pub fn r_vector_fini (vec : * mut RVector) ; } extern "C" { pub fn r_vector_free (vec : * mut RVector) ; } extern "C" { pub fn r_vector_clone (vec : * mut RVector) -> * mut RVector ; } extern "C" { pub fn r_vector_copy (d : * mut RVector , s : * mut RVector) -> bool ; } extern "C" { pub fn r_vector_clear (vec : * mut RVector) ; } extern "C" { pub fn r_vector_assign (vec : * mut RVector , p : * mut :: std :: os :: raw :: c_void , elem : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_assign_at (vec : * mut RVector , index : usize , elem : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_remove_at (vec : * mut RVector , index : usize , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_insert (vec : * mut RVector , index : usize , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_insert_range (vec : * mut RVector , index : usize , first : * mut :: std :: os :: raw :: c_void , count : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_pop (vec : * mut RVector , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_pop_front (vec : * mut RVector , into : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_vector_push (vec : * mut RVector , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_push_front (vec : * mut RVector , x : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_reserve (vec : * mut RVector , capacity : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_shrink (vec : * mut RVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_vector_flush (vec : * mut RVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_init (vec : * mut RPVector , free : RPVectorFree) ; } extern "C" { pub fn r_pvector_fini (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_new (free : RPVectorFree) -> * mut RPVector ; } extern "C" { pub fn r_pvector_new_with_len (free : RPVectorFree , length : usize) -> * mut RPVector ; } extern "C" { pub fn r_pvector_clear (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_free (vec : * mut RPVector) ; } extern "C" { pub fn r_pvector_contains (vec : * mut RPVector , x : * mut :: std :: os :: raw :: c_void) -> * mut * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_remove_at (vec : * mut RPVector , index : usize) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_remove_data (vec : * mut RPVector , x : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_pvector_pop (vec : * mut RPVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_pop_front (vec : * mut RPVector) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_pvector_sort (vec : * mut RPVector , cmp : RPVectorComparator) ; } extern "C" { pub fn r_pvector_bsearch (vec : * mut RPVector , needle : * mut :: std :: os :: raw :: c_void , cmp : RPVectorComparator) -> :: std :: os :: raw :: c_int ; } pub type cc_t = :: std :: os :: raw :: c_uchar ; pub type speed_t = :: std :: os :: raw :: c_uint ; pub type tcflag_t = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct termios { pub c_iflag : tcflag_t , pub c_oflag : tcflag_t , pub c_cflag : tcflag_t , pub c_lflag : tcflag_t , pub c_line : cc_t , pub c_cc : [cc_t ; 32usize] , pub __bindgen_anon_1 : termios__bindgen_ty_1 , pub __bindgen_anon_2 : termios__bindgen_ty_2 , } # [repr (C)] # [derive (Copy , Clone)] pub union termios__bindgen_ty_1 { pub __ispeed : speed_t , pub c_ispeed : speed_t , } # [test] fn bindgen_test_layout_termios__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < termios__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (termios__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < termios__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (termios__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ispeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_1) , "::" , stringify ! (__ispeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_ispeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_1) , "::" , stringify ! (c_ispeed))) ; } impl Default for termios__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub union termios__bindgen_ty_2 { pub __ospeed : speed_t , pub c_ospeed : speed_t , } # [test] fn bindgen_test_layout_termios__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < termios__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (termios__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < termios__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (termios__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . __ospeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_2) , "::" , stringify ! (__ospeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_ospeed) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios__bindgen_ty_2) , "::" , stringify ! (c_ospeed))) ; } impl Default for termios__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_termios () { const UNINIT : :: std :: mem :: MaybeUninit < termios > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < termios > () , 60usize , concat ! ("Size of: " , stringify ! (termios))) ; assert_eq ! (:: std :: mem :: align_of :: < termios > () , 4usize , concat ! ("Alignment of " , stringify ! (termios))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_iflag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_iflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_oflag) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_oflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_cflag) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_cflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_lflag) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_lflag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_line) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c_cc) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (termios) , "::" , stringify ! (c_cc))) ; } impl Default for termios { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type sa_family_t = :: std :: os :: raw :: c_ushort ; pub type RCoreHelpMessage = [* const :: std :: os :: raw :: c_char ; 0usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_code_colors_t { pub string : * mut :: std :: os :: raw :: c_char , pub cpp : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub number : * mut :: std :: os :: raw :: c_char , pub keyword : * mut :: std :: os :: raw :: c_char , pub types : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cons_code_colors_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_code_colors_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_code_colors_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_cons_code_colors_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_code_colors_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_code_colors_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (cpp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyword) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (keyword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . types) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_code_colors_t) , "::" , stringify ! (types))) ; } impl Default for r_cons_code_colors_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsCodeColors = r_cons_code_colors_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_mark_t { pub addr : u64 , pub name : * mut :: std :: os :: raw :: c_char , pub row : :: std :: os :: raw :: c_int , pub col : :: std :: os :: raw :: c_int , pub pos : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cons_mark_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_mark_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_mark_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cons_mark_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_mark_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_mark_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (row))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . col) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (col))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_mark_t) , "::" , stringify ! (pos))) ; } impl Default for r_cons_mark_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsMark = r_cons_mark_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cons_fd_pair { pub fd_src : i16 , pub fd_new : i16 , pub fd_bak : i16 , } # [test] fn bindgen_test_layout_r_cons_fd_pair () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_fd_pair > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_fd_pair > () , 6usize , concat ! ("Size of: " , stringify ! (r_cons_fd_pair))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_fd_pair > () , 2usize , concat ! ("Alignment of " , stringify ! (r_cons_fd_pair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_src) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_src))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_new) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_bak) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cons_fd_pair) , "::" , stringify ! (fd_bak))) ; } pub type RConsFdPair = r_cons_fd_pair ; pub type RVecFdPairs = r_vec_RVecFdPairs_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RConsTheme { pub name : * const :: std :: os :: raw :: c_char , pub script : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RConsTheme () { const UNINIT : :: std :: mem :: MaybeUninit < RConsTheme > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsTheme > () , 16usize , concat ! ("Size of: " , stringify ! (RConsTheme))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsTheme > () , 8usize , concat ! ("Alignment of " , stringify ! (RConsTheme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsTheme) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . script) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RConsTheme) , "::" , stringify ! (script))) ; } impl Default for RConsTheme { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_grep_t { pub strings : * mut RList , pub str_ : * mut :: std :: os :: raw :: c_char , pub counter : :: std :: os :: raw :: c_int , pub charCounter : bool , pub less : :: std :: os :: raw :: c_int , pub hud : bool , pub human : bool , pub gron : bool , pub json : bool , pub json_path : * mut :: std :: os :: raw :: c_char , pub range_line : :: std :: os :: raw :: c_int , pub line : :: std :: os :: raw :: c_int , pub sort : :: std :: os :: raw :: c_int , pub sort_uniq : :: std :: os :: raw :: c_int , pub sort_row : :: std :: os :: raw :: c_int , pub sort_invert : bool , pub f_line : :: std :: os :: raw :: c_int , pub l_line : :: std :: os :: raw :: c_int , pub tokens : [:: std :: os :: raw :: c_int ; 64usize] , pub tokens_used : :: std :: os :: raw :: c_int , pub amp : :: std :: os :: raw :: c_int , pub zoom : :: std :: os :: raw :: c_int , pub zoomy : :: std :: os :: raw :: c_int , pub xml : bool , pub icase : bool , pub ascart : bool , pub code : bool , pub colorcode : bool , } # [test] fn bindgen_test_layout_r_cons_grep_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_grep_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_grep_t > () , 352usize , concat ! ("Size of: " , stringify ! (r_cons_grep_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_grep_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_grep_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . counter) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charCounter) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (charCounter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . less) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (less))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hud) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (hud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . human) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (human))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gron) as usize - ptr as usize } , 30usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (gron))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . json) as usize - ptr as usize } , 31usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (json))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . json_path) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (json_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . range_line) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (range_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_uniq) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_uniq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_row) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_row))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sort_invert) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (sort_invert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f_line) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (f_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . l_line) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (l_line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tokens) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (tokens))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tokens_used) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (tokens_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . amp) as usize - ptr as usize } , 332usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (amp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoomy) as usize - ptr as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (zoomy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xml) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (xml))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icase) as usize - ptr as usize } , 345usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (icase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ascart) as usize - ptr as usize } , 346usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (ascart))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 347usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colorcode) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (r_cons_grep_t) , "::" , stringify ! (colorcode))) ; } impl Default for r_cons_grep_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsGrep = r_cons_grep_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct rcolor_t { pub attr : u8 , pub a : u8 , pub r : u8 , pub g : u8 , pub b : u8 , pub r2 : u8 , pub g2 : u8 , pub b2 : u8 , pub id16 : i8 , } # [test] fn bindgen_test_layout_rcolor_t () { const UNINIT : :: std :: mem :: MaybeUninit < rcolor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < rcolor_t > () , 9usize , concat ! ("Size of: " , stringify ! (rcolor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < rcolor_t > () , 1usize , concat ! ("Alignment of " , stringify ! (rcolor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (r))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (g))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r2) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (r2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g2) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (g2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b2) as usize - ptr as usize } , 7usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (b2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id16) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rcolor_t) , "::" , stringify ! (id16))) ; } pub type RColor = rcolor_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cons_palette_t { pub b0x00 : RColor , pub b0x7f : RColor , pub b0xff : RColor , pub args : RColor , pub bin : RColor , pub btext : RColor , pub call : RColor , pub cjmp : RColor , pub cmp : RColor , pub hint : RColor , pub comment : RColor , pub usercomment : RColor , pub creg : RColor , pub flag : RColor , pub fline : RColor , pub floc : RColor , pub flow : RColor , pub flow2 : RColor , pub fname : RColor , pub help : RColor , pub input : RColor , pub invalid : RColor , pub jmp : RColor , pub label : RColor , pub math : RColor , pub mov : RColor , pub nop : RColor , pub num : RColor , pub addr : RColor , pub other : RColor , pub pop : RColor , pub prompt : RColor , pub bgprompt : RColor , pub push : RColor , pub crypto : RColor , pub reg : RColor , pub reset : RColor , pub ret : RColor , pub swi : RColor , pub trap : RColor , pub ucall : RColor , pub ujmp : RColor , pub ai_read : RColor , pub ai_write : RColor , pub ai_exec : RColor , pub ai_seq : RColor , pub ai_ascii : RColor , pub gui_cflow : RColor , pub gui_dataoffset : RColor , pub gui_background : RColor , pub gui_background2 : RColor , pub gui_border : RColor , pub wordhl : RColor , pub linehl : RColor , pub var : RColor , pub var_name : RColor , pub var_type : RColor , pub var_addr : RColor , pub widget_bg : RColor , pub widget_sel : RColor , pub graph_box : RColor , pub graph_box2 : RColor , pub graph_box3 : RColor , pub graph_box4 : RColor , pub graph_true : RColor , pub graph_false : RColor , pub graph_trufae : RColor , pub graph_traced : RColor , pub graph_current : RColor , pub diff_match : RColor , pub diff_unmatch : RColor , pub diff_unknown : RColor , pub diff_new : RColor , } # [test] fn bindgen_test_layout_r_cons_palette_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_palette_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_palette_t > () , 657usize , concat ! ("Size of: " , stringify ! (r_cons_palette_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_palette_t > () , 1usize , concat ! ("Alignment of " , stringify ! (r_cons_palette_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x00) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0x00))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x7f) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0x7f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0xff) as usize - ptr as usize } , 18usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (b0xff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btext) as usize - ptr as usize } , 45usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (btext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 54usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmp) as usize - ptr as usize } , 63usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (cjmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 90usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usercomment) as usize - ptr as usize } , 99usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (usercomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 117usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fline) as usize - ptr as usize } , 126usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (fline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . floc) as usize - ptr as usize } , 135usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (floc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow2) as usize - ptr as usize } , 153usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (flow2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 162usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (fname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 171usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invalid) as usize - ptr as usize } , 189usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (invalid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 198usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label) as usize - ptr as usize } , 207usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (label))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . math) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (math))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mov) as usize - ptr as usize } , 225usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (mov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nop) as usize - ptr as usize } , 234usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (nop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 243usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other) as usize - ptr as usize } , 261usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (other))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 270usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 279usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgprompt) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (bgprompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 297usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crypto) as usize - ptr as usize } , 306usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 315usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 324usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 333usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 342usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 351usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucall) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ucall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ujmp) as usize - ptr as usize } , 369usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ujmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_read) as usize - ptr as usize } , 378usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_write) as usize - ptr as usize } , 387usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_exec) as usize - ptr as usize } , 396usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_exec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_seq) as usize - ptr as usize } , 405usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_ascii) as usize - ptr as usize } , 414usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (ai_ascii))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_cflow) as usize - ptr as usize } , 423usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_cflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_dataoffset) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_dataoffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background) as usize - ptr as usize } , 441usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_background))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background2) as usize - ptr as usize } , 450usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_background2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_border) as usize - ptr as usize } , 459usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (gui_border))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wordhl) as usize - ptr as usize } , 468usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (wordhl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linehl) as usize - ptr as usize } , 477usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (linehl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var) as usize - ptr as usize } , 486usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_name) as usize - ptr as usize } , 495usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_type) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_addr) as usize - ptr as usize } , 513usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (var_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_bg) as usize - ptr as usize } , 522usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (widget_bg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_sel) as usize - ptr as usize } , 531usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (widget_sel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box) as usize - ptr as usize } , 540usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box2) as usize - ptr as usize } , 549usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box3) as usize - ptr as usize } , 558usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box4) as usize - ptr as usize } , 567usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_box4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_true) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_true))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_false) as usize - ptr as usize } , 585usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_false))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_trufae) as usize - ptr as usize } , 594usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_trufae))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_traced) as usize - ptr as usize } , 603usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_current) as usize - ptr as usize } , 612usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (graph_current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_match) as usize - ptr as usize } , 621usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unmatch) as usize - ptr as usize } , 630usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_unmatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unknown) as usize - ptr as usize } , 639usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_unknown))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_new) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_cons_palette_t) , "::" , stringify ! (diff_new))) ; } pub type RConsPalette = r_cons_palette_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_printable_palette_t { pub b0x00 : * mut :: std :: os :: raw :: c_char , pub b0x7f : * mut :: std :: os :: raw :: c_char , pub b0xff : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub bin : * mut :: std :: os :: raw :: c_char , pub btext : * mut :: std :: os :: raw :: c_char , pub call : * mut :: std :: os :: raw :: c_char , pub cjmp : * mut :: std :: os :: raw :: c_char , pub cmp : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub usercomment : * mut :: std :: os :: raw :: c_char , pub creg : * mut :: std :: os :: raw :: c_char , pub flag : * mut :: std :: os :: raw :: c_char , pub fline : * mut :: std :: os :: raw :: c_char , pub floc : * mut :: std :: os :: raw :: c_char , pub flow : * mut :: std :: os :: raw :: c_char , pub flow2 : * mut :: std :: os :: raw :: c_char , pub fname : * mut :: std :: os :: raw :: c_char , pub help : * mut :: std :: os :: raw :: c_char , pub input : * mut :: std :: os :: raw :: c_char , pub invalid : * mut :: std :: os :: raw :: c_char , pub jmp : * mut :: std :: os :: raw :: c_char , pub label : * mut :: std :: os :: raw :: c_char , pub math : * mut :: std :: os :: raw :: c_char , pub mov : * mut :: std :: os :: raw :: c_char , pub nop : * mut :: std :: os :: raw :: c_char , pub num : * mut :: std :: os :: raw :: c_char , pub addr : * mut :: std :: os :: raw :: c_char , pub other : * mut :: std :: os :: raw :: c_char , pub pop : * mut :: std :: os :: raw :: c_char , pub prompt : * mut :: std :: os :: raw :: c_char , pub bgprompt : * mut :: std :: os :: raw :: c_char , pub push : * mut :: std :: os :: raw :: c_char , pub crypto : * mut :: std :: os :: raw :: c_char , pub reg : * mut :: std :: os :: raw :: c_char , pub reset : * mut :: std :: os :: raw :: c_char , pub ret : * mut :: std :: os :: raw :: c_char , pub swi : * mut :: std :: os :: raw :: c_char , pub trap : * mut :: std :: os :: raw :: c_char , pub ucall : * mut :: std :: os :: raw :: c_char , pub ujmp : * mut :: std :: os :: raw :: c_char , pub ai_read : * mut :: std :: os :: raw :: c_char , pub ai_write : * mut :: std :: os :: raw :: c_char , pub ai_exec : * mut :: std :: os :: raw :: c_char , pub ai_seq : * mut :: std :: os :: raw :: c_char , pub ai_ascii : * mut :: std :: os :: raw :: c_char , pub ai_unmap : * mut :: std :: os :: raw :: c_char , pub gui_cflow : * mut :: std :: os :: raw :: c_char , pub gui_dataoffset : * mut :: std :: os :: raw :: c_char , pub gui_background : * mut :: std :: os :: raw :: c_char , pub gui_background2 : * mut :: std :: os :: raw :: c_char , pub gui_border : * mut :: std :: os :: raw :: c_char , pub wordhl : * mut :: std :: os :: raw :: c_char , pub linehl : * mut :: std :: os :: raw :: c_char , pub var : * mut :: std :: os :: raw :: c_char , pub var_name : * mut :: std :: os :: raw :: c_char , pub var_type : * mut :: std :: os :: raw :: c_char , pub var_addr : * mut :: std :: os :: raw :: c_char , pub widget_bg : * mut :: std :: os :: raw :: c_char , pub widget_sel : * mut :: std :: os :: raw :: c_char , pub graph_box : * mut :: std :: os :: raw :: c_char , pub graph_box2 : * mut :: std :: os :: raw :: c_char , pub graph_box3 : * mut :: std :: os :: raw :: c_char , pub graph_box4 : * mut :: std :: os :: raw :: c_char , pub diff_match : * mut :: std :: os :: raw :: c_char , pub diff_unmatch : * mut :: std :: os :: raw :: c_char , pub diff_unknown : * mut :: std :: os :: raw :: c_char , pub diff_new : * mut :: std :: os :: raw :: c_char , pub graph_true : * mut :: std :: os :: raw :: c_char , pub graph_false : * mut :: std :: os :: raw :: c_char , pub graph_trufae : * mut :: std :: os :: raw :: c_char , pub graph_traced : * mut :: std :: os :: raw :: c_char , pub graph_current : * mut :: std :: os :: raw :: c_char , pub rainbow : * mut * mut :: std :: os :: raw :: c_char , pub rainbow_sz : usize , } # [test] fn bindgen_test_layout_r_cons_printable_palette_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_printable_palette_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_printable_palette_t > () , 600usize , concat ! ("Size of: " , stringify ! (r_cons_printable_palette_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_printable_palette_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_printable_palette_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x00) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0x00))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0x7f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0x7f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b0xff) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (b0xff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btext) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (btext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmp) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (cjmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (cmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usercomment) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (usercomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fline) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (fline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . floc) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (floc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow2) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (flow2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (fname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invalid) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (invalid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (label))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . math) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (math))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mov) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (mov))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nop) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (nop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . other) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (other))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgprompt) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (bgprompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crypto) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ucall) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ucall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ujmp) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ujmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_read) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_write) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_exec) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_exec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_seq) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_seq))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_ascii) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_ascii))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ai_unmap) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (ai_unmap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_cflow) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_cflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_dataoffset) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_dataoffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_background))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_background2) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_background2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gui_border) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (gui_border))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wordhl) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (wordhl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linehl) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (linehl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_name) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_type) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_addr) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (var_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_bg) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (widget_bg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . widget_sel) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (widget_sel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box2) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box3) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_box4) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_box4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_match) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unmatch) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_unmatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_unknown) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_unknown))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_new) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (diff_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_true) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_true))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_false) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_false))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_trufae) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_trufae))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_traced) as usize - ptr as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_current) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (graph_current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rainbow) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (rainbow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rainbow_sz) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_cons_printable_palette_t) , "::" , stringify ! (rainbow_sz))) ; } impl Default for r_cons_printable_palette_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsPrintablePalette = r_cons_printable_palette_t ; pub type RConsEvent = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_canvas_t { pub cons : * mut r_cons_t , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub b : * mut * mut :: std :: os :: raw :: c_char , pub blen : * mut :: std :: os :: raw :: c_int , pub bsize : * mut :: std :: os :: raw :: c_int , pub attr : * const :: std :: os :: raw :: c_char , pub attrs : * mut [u64 ; 11usize] , pub constpool : RStrConstPool , pub sx : :: std :: os :: raw :: c_int , pub sy : :: std :: os :: raw :: c_int , pub color : :: std :: os :: raw :: c_int , pub linemode : :: std :: os :: raw :: c_int , pub bgcolor : * mut :: std :: os :: raw :: c_char , pub flags : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cons_canvas_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_canvas_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_canvas_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_cons_canvas_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_canvas_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_canvas_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blen) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (blen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bsize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (bsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attrs) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (attrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sx) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (sx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sy) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (sy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linemode) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (linemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bgcolor) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (bgcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_t) , "::" , stringify ! (flags))) ; } impl Default for r_cons_canvas_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsCanvas = r_cons_canvas_t ; pub type RConsEditorCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RConsClickCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsBreakCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) > ; pub type RConsSleepBeginCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; pub type RConsSleepEndCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) > ; pub type RConsFunctionKey = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , fkey : :: std :: os :: raw :: c_int) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_context_t { pub grep : RConsGrep , pub buffer : * mut :: std :: os :: raw :: c_char , pub buffer_len : usize , pub buffer_sz : usize , pub buffer_limit : usize , pub breaked : bool , pub was_breaked : bool , pub unbreakable : bool , pub break_stack : * mut RStack , pub event_interrupt : RConsEvent , pub event_interrupt_data : * mut :: std :: os :: raw :: c_void , pub cmd_str_depth : :: std :: os :: raw :: c_int , pub noflush : bool , pub log_callback : RLogCallback , pub lastOutput : * mut :: std :: os :: raw :: c_char , pub lastLength : :: std :: os :: raw :: c_int , pub lastMode : bool , pub lastEnabled : bool , pub is_interactive : bool , pub pageable : bool , pub color_mode : :: std :: os :: raw :: c_int , pub cpal : RConsPalette , pub pal : RConsPrintablePalette , pub sorted_lines : * mut RList , pub unsorted_lines : * mut RList , pub sorted_column : :: std :: os :: raw :: c_int , pub demo : bool , pub is_html : bool , pub tmp_html : bool , pub was_html : bool , pub grep_color : bool , pub grep_highlight : bool , pub filter : bool , pub use_tts : bool , pub flush : bool , pub colors : [:: std :: os :: raw :: c_int ; 256usize] , pub marks : * mut RList , } # [test] fn bindgen_test_layout_r_cons_context_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_context_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_context_t > () , 2776usize , concat ! ("Size of: " , stringify ! (r_cons_context_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_context_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_context_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_len) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_sz) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer_limit) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (buffer_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breaked) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . was_breaked) as usize - ptr as usize } , 385usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (was_breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unbreakable) as usize - ptr as usize } , 386usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (unbreakable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_stack) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (break_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_interrupt) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (event_interrupt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_interrupt_data) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (event_interrupt_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_str_depth) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (cmd_str_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . noflush) as usize - ptr as usize } , 420usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (noflush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log_callback) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (log_callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastOutput) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastOutput))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastLength) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastLength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastMode) as usize - ptr as usize } , 444usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastEnabled) as usize - ptr as usize } , 445usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (lastEnabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_interactive) as usize - ptr as usize } , 446usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (is_interactive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pageable) as usize - ptr as usize } , 447usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (pageable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color_mode) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (color_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpal) as usize - ptr as usize } , 452usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (cpal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pal) as usize - ptr as usize } , 1112usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (pal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted_lines) as usize - ptr as usize } , 1712usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (sorted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unsorted_lines) as usize - ptr as usize } , 1720usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (unsorted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sorted_column) as usize - ptr as usize } , 1728usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (sorted_column))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demo) as usize - ptr as usize } , 1732usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (demo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_html) as usize - ptr as usize } , 1733usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (is_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmp_html) as usize - ptr as usize } , 1734usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (tmp_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . was_html) as usize - ptr as usize } , 1735usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (was_html))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep_color) as usize - ptr as usize } , 1736usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep_color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . grep_highlight) as usize - ptr as usize } , 1737usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (grep_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 1738usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_tts) as usize - ptr as usize } , 1739usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (use_tts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flush) as usize - ptr as usize } , 1740usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (flush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colors) as usize - ptr as usize } , 1744usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (colors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . marks) as usize - ptr as usize } , 2768usize , concat ! ("Offset of field: " , stringify ! (r_cons_context_t) , "::" , stringify ! (marks))) ; } impl Default for r_cons_context_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsContext = r_cons_context_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RConsCursorPos { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RConsCursorPos () { const UNINIT : :: std :: mem :: MaybeUninit < RConsCursorPos > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsCursorPos > () , 8usize , concat ! ("Size of: " , stringify ! (RConsCursorPos))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsCursorPos > () , 4usize , concat ! ("Alignment of " , stringify ! (RConsCursorPos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsCursorPos) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RConsCursorPos) , "::" , stringify ! (y))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct input_state_t { pub readbuffer : * mut :: std :: os :: raw :: c_char , pub readbuffer_length : :: std :: os :: raw :: c_int , pub bufactive : bool , } # [test] fn bindgen_test_layout_input_state_t () { const UNINIT : :: std :: mem :: MaybeUninit < input_state_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < input_state_t > () , 16usize , concat ! ("Size of: " , stringify ! (input_state_t))) ; assert_eq ! (:: std :: mem :: align_of :: < input_state_t > () , 8usize , concat ! ("Alignment of " , stringify ! (input_state_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readbuffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (readbuffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readbuffer_length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (readbuffer_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bufactive) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (input_state_t) , "::" , stringify ! (bufactive))) ; } impl Default for input_state_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type InputState = input_state_t ; # [repr (C)] # [repr (align (16))] # [derive (Copy , Clone)] pub struct r_cons_t { pub context : * mut RConsContext , pub ctx_stack : * mut RList , pub input_state : InputState , pub lastline : * mut :: std :: os :: raw :: c_char , pub lines : :: std :: os :: raw :: c_int , pub rows : :: std :: os :: raw :: c_int , pub echo : :: std :: os :: raw :: c_int , pub fps : :: std :: os :: raw :: c_int , pub columns : :: std :: os :: raw :: c_int , pub force_rows : :: std :: os :: raw :: c_int , pub force_columns : :: std :: os :: raw :: c_int , pub fix_rows : :: std :: os :: raw :: c_int , pub fix_columns : :: std :: os :: raw :: c_int , pub break_lines : bool , pub show_autocomplete_widget : bool , pub fdin : * mut FILE , pub fdout : :: std :: os :: raw :: c_int , pub teefile : * const :: std :: os :: raw :: c_char , pub user_fgets : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut r_cons_t , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub event_resize : RConsEvent , pub event_data : * mut :: std :: os :: raw :: c_void , pub mouse_event : bool , pub cb_editor : RConsEditorCallback , pub cb_break : RConsBreakCallback , pub cb_sleep_begin : RConsSleepBeginCallback , pub cb_sleep_end : RConsSleepEndCallback , pub cb_click : RConsClickCallback , pub cb_fkey : RConsFunctionKey , pub user : * mut :: std :: os :: raw :: c_void , pub term_raw : termios , pub term_buf : termios , pub num : * mut RNum , pub pager : * mut :: std :: os :: raw :: c_char , pub blankline : :: std :: os :: raw :: c_int , pub highlight : * mut :: std :: os :: raw :: c_char , pub enable_highlight : bool , pub null : :: std :: os :: raw :: c_int , pub mouse : :: std :: os :: raw :: c_int , pub is_wine : :: std :: os :: raw :: c_int , pub line : * mut r_line_t , pub vline : * mut * const :: std :: os :: raw :: c_char , pub vtmode : :: std :: os :: raw :: c_int , pub use_utf8 : bool , pub use_utf8_curvy : bool , pub dotted_lines : bool , pub linesleep : :: std :: os :: raw :: c_int , pub pagesize : :: std :: os :: raw :: c_int , pub maxpage : :: std :: os :: raw :: c_int , pub break_word : * mut :: std :: os :: raw :: c_char , pub break_word_len : :: std :: os :: raw :: c_int , pub timeout : u64 , pub otimeout : :: std :: os :: raw :: c_int , pub timeout_break : bool , pub timeout_warned : bool , pub rgbstr : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut r_cons_t , str_ : * mut :: std :: os :: raw :: c_char , sz : usize , addr : u64) -> * mut :: std :: os :: raw :: c_char > , pub click_set : bool , pub click_x : :: std :: os :: raw :: c_int , pub click_y : :: std :: os :: raw :: c_int , pub show_vals : bool , pub lock : * mut RThreadLock , pub cpos : RConsCursorPos , pub __bindgen_padding_0 : u64 , pub fds : RVecFdPairs , pub oldraw : :: std :: os :: raw :: c_int , pub prev : u64 , pub echodata : * mut RStrBuf , pub lasti : bool , } # [test] fn bindgen_test_layout_r_cons_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_t > () , 544usize , concat ! ("Size of: " , stringify ! (r_cons_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_cons_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . context) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctx_stack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (ctx_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . input_state) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (input_state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastline) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lastline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rows) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echo) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (echo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fps) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columns) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_rows) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (force_rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_columns) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (force_columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fix_rows) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fix_rows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fix_columns) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fix_columns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_lines) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_autocomplete_widget) as usize - ptr as usize } , 77usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (show_autocomplete_widget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdin) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fdin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fdout) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fdout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . teefile) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (teefile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_fgets) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (user_fgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_resize) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (event_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event_data) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (event_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_event) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (mouse_event))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_editor) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_editor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_break) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_break))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_sleep_begin) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_sleep_begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_sleep_end) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_sleep_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_click) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_click))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_fkey) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cb_fkey))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . term_raw) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (term_raw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . term_buf) as usize - ptr as usize } , 252usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (term_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pager) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (pager))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blankline) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (blankline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . highlight) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_highlight) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (enable_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . null) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (null))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (mouse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_wine) as usize - ptr as usize } , 356usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (is_wine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vline) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (vline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtmode) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (vtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_utf8) as usize - ptr as usize } , 380usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (use_utf8))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_utf8_curvy) as usize - ptr as usize } , 381usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (use_utf8_curvy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dotted_lines) as usize - ptr as usize } , 382usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (dotted_lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . linesleep) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (linesleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pagesize) as usize - ptr as usize } , 388usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (pagesize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxpage) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (maxpage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_word) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_word))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_word_len) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (break_word_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout) as usize - ptr as usize } , 416usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . otimeout) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (otimeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout_break) as usize - ptr as usize } , 428usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout_break))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout_warned) as usize - ptr as usize } , 429usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (timeout_warned))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rgbstr) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (rgbstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_set) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_x) as usize - ptr as usize } , 444usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . click_y) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (click_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_vals) as usize - ptr as usize } , 452usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (show_vals))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpos) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (cpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fds) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (fds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldraw) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (oldraw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echodata) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (echodata))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lasti) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_cons_t) , "::" , stringify ! (lasti))) ; } impl Default for r_cons_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCons = r_cons_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_canvas_line_style_t { pub color : :: std :: os :: raw :: c_int , pub symbol : :: std :: os :: raw :: c_int , pub dot_style : :: std :: os :: raw :: c_int , pub ansicolor : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cons_canvas_line_style_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_canvas_line_style_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_canvas_line_style_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_cons_canvas_line_style_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_canvas_line_style_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_canvas_line_style_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dot_style) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (dot_style))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ansicolor) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_canvas_line_style_t) , "::" , stringify ! (ansicolor))) ; } impl Default for r_cons_canvas_line_style_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCanvasLineStyle = r_cons_canvas_line_style_t ; extern "C" { pub fn r_cons_image (buf : * const u8 , bufsz : :: std :: os :: raw :: c_int , width : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , components : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_new (cons : * mut RCons , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int) -> * mut RConsCanvas ; } extern "C" { pub fn r_cons_canvas_flags (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_canvas_free (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_clear (c : * mut RConsCanvas , flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_print (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_print_region (c : * mut RConsCanvas) ; } extern "C" { pub fn r_cons_canvas_tostring (c : * mut RConsCanvas) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_canvas_attr (c : * mut RConsCanvas , attr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_write (c : * mut RConsCanvas , _s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_background (c : * mut RConsCanvas , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_gotoxy (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_canvas_write_at (c : * mut RConsCanvas , s : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_box (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_circle (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_line (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_line_diagonal (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_line_square (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle) ; } extern "C" { pub fn r_cons_canvas_resize (c : * mut RConsCanvas , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_canvas_fill (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , ch : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_bgfill (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , color : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_canvas_line_square_defined (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle , bendpoint : :: std :: os :: raw :: c_int , isvert : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_canvas_line_back_edge (c : * mut RConsCanvas , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , style : * mut RCanvasLineStyle , ybendpoint1 : :: std :: os :: raw :: c_int , xbendpoint : :: std :: os :: raw :: c_int , ybendpoint2 : :: std :: os :: raw :: c_int , isvert : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_new () -> * mut RCons ; } extern "C" { pub fn r_cons_singleton () -> * mut RCons ; } extern "C" { pub fn r_cons_global (c : * mut RCons) -> * mut RCons ; } extern "C" { pub fn r_cons_get_size (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_themes () -> * const RConsTheme ; } extern "C" { pub fn r_cons_free (cons : * mut RCons) ; } extern "C" { pub fn r_cons_set_click (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_get_click (cons : * mut RCons , x : * mut :: std :: os :: raw :: c_int , y : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_mark (cons : * mut RCons , addr : u64 , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_mark_at (cons : * mut RCons , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> * mut RConsMark ; } extern "C" { pub fn r_cons_mark_flush (cons : * mut RCons) ; } pub type RConsBreak = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_cons_is_initialized () -> bool ; } extern "C" { pub fn r_cons_was_breaked (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_is_interactive (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_default_context_is_interactive () -> bool ; } extern "C" { pub fn r_cons_break_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_break_timeout (cons : * mut RCons , timeout : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_break_end (cons : * mut RCons) ; } extern "C" { pub fn r_cons_break (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pipe_open (cons : * mut RCons , file : * const :: std :: os :: raw :: c_char , fdn : :: std :: os :: raw :: c_int , append : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_pipe_close (cons : * mut RCons , fd : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pipe_close_all (cons : * mut RCons) ; } extern "C" { pub fn r_cons_sleep_begin (cons : * mut RCons) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_cons_sleep_end (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cons_clear_buffer (cons : * mut RCons) ; } extern "C" { pub fn r_cons_codecolors (cons : * mut RCons) -> RConsCodeColors ; } extern "C" { pub fn r_cons_context_pal_free (ctx : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_new (parent : * mut RConsContext) -> * mut RConsContext ; } extern "C" { pub fn r_cons_context_free (context : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_is_main (cons : * mut RCons , context : * mut RConsContext) -> bool ; } extern "C" { pub fn r_cons_context_break (context : * mut RConsContext) ; } extern "C" { pub fn r_cons_context_break_push (cons : * mut RCons , context : * mut RConsContext , cb : RConsBreak , user : * mut :: std :: os :: raw :: c_void , sig : bool) ; } extern "C" { pub fn r_cons_context_break_pop (cons : * mut RCons , context : * mut RConsContext , sig : bool) ; } extern "C" { pub fn r_cons_editor (cons : * mut RCons , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_stdout_open (file : * const :: std :: os :: raw :: c_char , append : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_stdout_set_fd (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_get_cur_line () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_line (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , x2 : :: std :: os :: raw :: c_int , y2 : :: std :: os :: raw :: c_int , ch : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_swap_ground (col : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_set_raw (cons : * mut RCons , is_raw : bool) ; } extern "C" { pub fn r_cons_invert (cons : * mut RCons , set : :: std :: os :: raw :: c_int , color : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_gprintf (format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_print (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_print_at (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_print_justify (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , j : :: std :: os :: raw :: c_int , c : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_print_fps (cons : * mut RCons , col : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_less_str (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , exitkeys : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_less (cons : * mut RCons) ; } extern "C" { pub fn r_cons_2048 (cons : * mut RCons , color : bool) ; } extern "C" { pub fn r_cons_is_utf8 () -> bool ; } extern "C" { pub fn r_cons_is_windows () -> bool ; } extern "C" { pub fn r_cons_cmd_help (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char , use_color : bool) ; } extern "C" { pub fn r_cons_cmd_help_json (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_cmd_help_match (cons : * mut RCons , help : * const * const :: std :: os :: raw :: c_char , use_color : bool , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char , exact : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_log_stub (output : * const :: std :: os :: raw :: c_char , funcname : * const :: std :: os :: raw :: c_char , filename : * const :: std :: os :: raw :: c_char , lineno : :: std :: os :: raw :: c_uint , level : :: std :: os :: raw :: c_uint , tag : * const :: std :: os :: raw :: c_char , fmtstr : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_cons_filter (cons : * mut RCons) ; } extern "C" { pub fn r_cons_controlz (cons : * mut RCons , ch : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_readchar (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_readpush (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_readflush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_switchbuf (cons : * mut RCons , active : bool) ; } extern "C" { pub fn r_cons_readchar_timeout (cons : * mut RCons , usec : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_any_key (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_thready () ; } extern "C" { pub fn r_cons_palette_init (pal : * const :: std :: os :: raw :: c_uchar) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_pal_set (cons : * mut RCons , key : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cons_pal_reload (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_init (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_copy (cons : * mut RCons , src : * mut RConsContext) ; } extern "C" { pub fn r_cons_pal_parse (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char , outcol : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_random (cons : * mut RCons) ; } extern "C" { pub fn r_cons_pal_get (cons : * mut RCons , key : * const :: std :: os :: raw :: c_char) -> RColor ; } extern "C" { pub fn r_cons_pal_get_i (cons : * mut RCons , index : :: std :: os :: raw :: c_int) -> RColor ; } extern "C" { pub fn r_cons_pal_get_name (cons : * mut RCons , index : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_len () -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_rgb_tostring (r : u8 , g : u8 , b : u8) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pal_list (cons : * mut RCons , rad : :: std :: os :: raw :: c_int , arg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_pal_show (cons : * mut RCons) ; } extern "C" { pub fn r_cons_is_tty () -> bool ; } extern "C" { pub fn r_cons_arrow_to_hjkl (cons : * mut RCons , ch : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_html_filter (ptr : * const :: std :: os :: raw :: c_char , newlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rainbow_get (cons : * mut RCons , idx : :: std :: os :: raw :: c_int , last : :: std :: os :: raw :: c_int , bg : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rainbow_free (ctx : * mut RCons) ; } extern "C" { pub fn r_cons_context_rainbow_free (ctx : * mut RConsContext) ; } extern "C" { pub fn r_cons_rainbow_new (ctx : * mut RCons , sz : usize) ; } extern "C" { pub fn r_cons_fgets (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_hud (cons : * mut RCons , list : * mut RList , prompt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_line_string (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_path (cons : * mut RCons , path : * const :: std :: os :: raw :: c_char , dir : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_string (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_hud_file (cons : * mut RCons , f : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_grep_help (cons : * mut RCons) ; } extern "C" { pub fn r_cons_grep_expression (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grep_parsecmd (cons : * mut RCons , cmd : * mut :: std :: os :: raw :: c_char , quotestr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grep_strip (cmd : * mut :: std :: os :: raw :: c_char , quotestr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_grep_line (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_rgb (r : u8 , g : u8 , b : u8 , a : u8) ; } extern "C" { pub fn r_cons_rgb_fgbg (r : u8 , g : u8 , b : u8 , R : u8 , G : u8 , B : u8) ; } extern "C" { pub fn r_cons_rgb_str_mode (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , rcolor : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rgb_str (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , rcolor : * mut RColor) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_rgb_str_off (cons : * mut RCons , outstr : * mut :: std :: os :: raw :: c_char , sz : usize , off : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_color (fg : :: std :: os :: raw :: c_int , r : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int , b : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_color_random (cons : * mut RCons , alpha : u8) -> RColor ; } extern "C" { pub fn r_cons_yesno (cons : * mut RCons , def : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , ...) -> bool ; } extern "C" { pub fn r_cons_input (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_password (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_set_cup (enable : bool) -> bool ; } extern "C" { pub fn r_cons_message (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_enable_mouse (cons : * mut RCons , enable : bool) -> bool ; } extern "C" { pub fn r_cons_enable_highlight (cons : * mut RCons , enable : bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RConsPixel { pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub buf_size : usize , } # [test] fn bindgen_test_layout_RConsPixel () { const UNINIT : :: std :: mem :: MaybeUninit < RConsPixel > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RConsPixel > () , 24usize , concat ! ("Size of: " , stringify ! (RConsPixel))) ; assert_eq ! (:: std :: mem :: align_of :: < RConsPixel > () , 8usize , concat ! ("Alignment of " , stringify ! (RConsPixel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf_size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RConsPixel) , "::" , stringify ! (buf_size))) ; } impl Default for RConsPixel { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_cons_pixel_new (w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut RConsPixel ; } extern "C" { pub fn r_cons_pixel_free (p : * mut RConsPixel) ; } extern "C" { pub fn r_cons_pixel_flush (cons : * mut RCons , p : * mut RConsPixel , sx : :: std :: os :: raw :: c_int , sy : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pixel_drain (p : * mut RConsPixel) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_pixel_get (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) -> u8 ; } extern "C" { pub fn r_cons_pixel_set (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , v : u8) ; } extern "C" { pub fn r_cons_pixel_sets (p : * mut RConsPixel , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int , s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_pixel_fill (p : * mut RConsPixel , _x : :: std :: os :: raw :: c_int , _y : :: std :: os :: raw :: c_int , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int , v : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_pixel_tostring (p : * mut RConsPixel) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_selection_widget_t { pub options : * mut * const :: std :: os :: raw :: c_char , pub options_len : :: std :: os :: raw :: c_int , pub selection : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub scroll : :: std :: os :: raw :: c_int , pub complete_common : bool , pub direction : bool , } # [test] fn bindgen_test_layout_r_selection_widget_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_selection_widget_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_selection_widget_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_selection_widget_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_selection_widget_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_selection_widget_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options_len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (options_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selection) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (selection))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scroll) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (scroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . complete_common) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (complete_common))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_selection_widget_t) , "::" , stringify ! (direction))) ; } impl Default for r_selection_widget_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSelWidget = r_selection_widget_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_hist_t { pub data : * mut * mut :: std :: os :: raw :: c_char , pub match_ : * mut :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , pub index : :: std :: os :: raw :: c_int , pub top : :: std :: os :: raw :: c_int , pub autosave : :: std :: os :: raw :: c_int , pub do_setup_match : bool , pub load_index : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_hist_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_hist_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_hist_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_line_hist_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_hist_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_hist_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . match_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (match_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (top))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autosave) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (autosave))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . do_setup_match) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (do_setup_match))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load_index) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_line_hist_t) , "::" , stringify ! (load_index))) ; } impl Default for r_line_hist_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineHistory = r_line_hist_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_buffer_t { pub data : [:: std :: os :: raw :: c_char ; 4096usize] , pub index : :: std :: os :: raw :: c_int , pub length : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_buffer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_buffer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_buffer_t > () , 4104usize , concat ! ("Size of: " , stringify ! (r_line_buffer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_buffer_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_line_buffer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (r_line_buffer_t) , "::" , stringify ! (length))) ; } impl Default for r_line_buffer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineBuffer = r_line_buffer_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_hud_t { pub current_entry_n : :: std :: os :: raw :: c_int , pub top_entry_n : :: std :: os :: raw :: c_int , pub activate : :: std :: os :: raw :: c_char , pub vi : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_hud_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hud_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hud_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_hud_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hud_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_hud_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_entry_n) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (current_entry_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top_entry_n) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (top_entry_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . activate) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (activate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vi) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_hud_t) , "::" , stringify ! (vi))) ; } pub type RLineHud = r_hud_t ; pub type RLine = r_line_t ; pub type RLineCompletion = r_line_comp_t ; pub const RLinePromptType_R_LINE_PROMPT_DEFAULT : RLinePromptType = 0 ; pub const RLinePromptType_R_LINE_PROMPT_OFFSET : RLinePromptType = 1 ; pub const RLinePromptType_R_LINE_PROMPT_FILE : RLinePromptType = 2 ; pub type RLinePromptType = :: std :: os :: raw :: c_uint ; pub type RLineCompletionCb = :: std :: option :: Option < unsafe extern "C" fn (completion : * mut RLineCompletion , buf : * mut RLineBuffer , prompt_type : RLinePromptType , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_comp_t { pub opt : bool , pub args_limit : usize , pub quit : bool , pub args : RPVector , pub run : RLineCompletionCb , pub run_user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_line_comp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_comp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_comp_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_line_comp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_comp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_comp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args_limit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (args_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quit) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (quit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_user) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_line_comp_t) , "::" , stringify ! (run_user))) ; } impl Default for r_line_comp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLineHistoryUpCb = :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine) -> :: std :: os :: raw :: c_int > ; pub type RLineHistoryDownCb = :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_line_t { pub cons : * mut r_cons_t , pub completion : RLineCompletion , pub buffer : RLineBuffer , pub history : RLineHistory , pub sel_widget : * mut RSelWidget , pub cb_history_up : RLineHistoryUpCb , pub cb_history_down : RLineHistoryDownCb , pub cb_fkey : RConsFunctionKey , pub echo : bool , pub prompt : * mut :: std :: os :: raw :: c_char , pub kill_ring : * mut RList , pub kill_ring_ptr : :: std :: os :: raw :: c_int , pub clipboard : * mut :: std :: os :: raw :: c_char , pub disable : bool , pub user : * mut :: std :: os :: raw :: c_void , pub histfilter : bool , pub hist_up : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub hist_down : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > , pub contents : * mut :: std :: os :: raw :: c_char , pub zerosep : bool , pub enable_vi_mode : bool , pub vi_mode : :: std :: os :: raw :: c_int , pub prompt_mode : bool , pub prompt_type : RLinePromptType , pub offset_hist_index : :: std :: os :: raw :: c_int , pub file_hist_index : :: std :: os :: raw :: c_int , pub hud : * mut RLineHud , pub sdbshell_hist : * mut RList , pub sdbshell_hist_iter : * mut RListIter , pub maxlength : :: std :: os :: raw :: c_int , pub vtmode : :: std :: os :: raw :: c_int , pub demo : bool , pub hist_size : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_line_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_line_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_line_t > () , 4424usize , concat ! ("Size of: " , stringify ! (r_line_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_line_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_line_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . completion) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (completion))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . history) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (history))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sel_widget) as usize - ptr as usize } , 4240usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sel_widget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_history_up) as usize - ptr as usize } , 4248usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_history_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_history_down) as usize - ptr as usize } , 4256usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_history_down))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_fkey) as usize - ptr as usize } , 4264usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (cb_fkey))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . echo) as usize - ptr as usize } , 4272usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (echo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 4280usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_ring) as usize - ptr as usize } , 4288usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (kill_ring))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_ring_ptr) as usize - ptr as usize } , 4296usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (kill_ring_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clipboard) as usize - ptr as usize } , 4304usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (clipboard))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disable) as usize - ptr as usize } , 4312usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (disable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 4320usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . histfilter) as usize - ptr as usize } , 4328usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (histfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_up) as usize - ptr as usize } , 4336usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_down) as usize - ptr as usize } , 4344usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_down))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contents) as usize - ptr as usize } , 4352usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (contents))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zerosep) as usize - ptr as usize } , 4360usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (zerosep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_vi_mode) as usize - ptr as usize } , 4361usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (enable_vi_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vi_mode) as usize - ptr as usize } , 4364usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (vi_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_mode) as usize - ptr as usize } , 4368usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_type) as usize - ptr as usize } , 4372usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (prompt_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset_hist_index) as usize - ptr as usize } , 4376usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (offset_hist_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_hist_index) as usize - ptr as usize } , 4380usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (file_hist_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hud) as usize - ptr as usize } , 4384usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hud))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdbshell_hist) as usize - ptr as usize } , 4392usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sdbshell_hist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdbshell_hist_iter) as usize - ptr as usize } , 4400usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (sdbshell_hist_iter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxlength) as usize - ptr as usize } , 4408usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (maxlength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtmode) as usize - ptr as usize } , 4412usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (vtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demo) as usize - ptr as usize } , 4416usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (demo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_size) as usize - ptr as usize } , 4420usize , concat ! ("Offset of field: " , stringify ! (r_line_t) , "::" , stringify ! (hist_size))) ; } impl Default for r_line_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_line_new (cons : * mut RCons) -> * mut RLine ; } extern "C" { pub fn r_line_dietline_init (line : * mut RLine) -> bool ; } extern "C" { pub fn r_line_free (line : * mut RLine) ; } extern "C" { pub fn r_line_get_prompt (line : * mut RLine) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_set_prompt (line : * mut RLine , prompt : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_clipboard_push (line : * mut RLine , str_ : * const :: std :: os :: raw :: c_char) ; } pub type RLineReadCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , user : * mut :: std :: os :: raw :: c_void , line : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_line_readline (cons : * mut RCons) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_readline_cb (cons : * mut RCons , cb : RLineReadCallback , user : * mut :: std :: os :: raw :: c_void) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_hist_free (line : * mut RLine) ; } extern "C" { pub fn r_line_hist_load (line : * mut RLine , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_add (line : * mut RLine , text : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_save (line : * mut RLine , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_line_hist_label (line : * mut RLine , label : * const :: std :: os :: raw :: c_char , cb : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * const :: std :: os :: raw :: c_char) >) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_label_show (line : * mut RLine) ; } extern "C" { pub fn r_line_hist_list (line : * mut RLine , full : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_get_size (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_set_size (line : * mut RLine , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_line_hist_get (line : * mut RLine , n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_line_set_hist_callback (line : * mut RLine , cb_up : RLineHistoryUpCb , cb_down : RLineHistoryDownCb) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_cmd_up (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_cmd_down (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_completion_init (completion : * mut RLineCompletion , args_limit : usize) ; } extern "C" { pub fn r_line_completion_push (completion : * mut RLineCompletion , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_completion_set (completion : * mut RLineCompletion , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_completion_clear (completion : * mut RLineCompletion) ; } extern "C" { pub fn r_cons_grep (cons : * mut RCons , grep : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_grepbuf (cons : * mut RCons) ; } extern "C" { pub fn r_cons_println (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_newline (cons : * mut RCons) ; } extern "C" { pub fn r_cons_write (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_memset (cons : * mut RCons , ch : :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_printf_list (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ap : * mut __va_list_tag) ; } extern "C" { pub fn r_cons_printf (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_gotoxy (cons : * mut RCons , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_interactive (cons : * mut RCons , x : bool) ; } extern "C" { pub fn r_cons_set_last_interactive (cons : * mut RCons) ; } extern "C" { pub fn r_cons_flush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_last (cons : * mut RCons) ; } extern "C" { pub fn r_cons_new2 () -> * mut RCons ; } extern "C" { pub fn r_cons_pop (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_free2 (cons : * mut RCons) ; } extern "C" { pub fn r_cons_print_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_fill_line (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear_line (cons : * mut RCons , std_err : bool , flush : bool) ; } extern "C" { pub fn r_cons_reset_colors (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear (cons : * mut RCons) ; } extern "C" { pub fn r_cons_clear00 (cons : * mut RCons) ; } extern "C" { pub fn r_cons_reset (cons : * mut RCons) ; } extern "C" { pub fn r_cons_get_buffer (cons : * mut RCons , buffer_len : * mut usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_push (cons : * mut RCons) ; } extern "C" { pub fn r_cons_context_clone (ctx : * mut RConsContext) -> * mut RConsContext ; } extern "C" { pub fn r_cons_echo (cons : * mut RCons , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_drain (cons : * mut RCons) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_visual_flush (cons : * mut RCons) ; } extern "C" { pub fn r_cons_visual_write (cons : * mut RCons , buffer : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_get_column (cons : * mut RCons) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_get_cursor (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cons_show_cursor (cons : * mut RCons , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_utf8 (cons : * mut RCons , b : bool) ; } extern "C" { pub fn r_cons_column (cons : * mut RCons , c : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_cons_set_title (cons : * mut RCons , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_zero (cons : * mut RCons) ; } extern "C" { pub fn r_cons_highlight (cons : * mut RCons , word : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_lastline (cons : * mut RCons , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_lastline_utf8_ansi_len (cons : * mut RCons , len : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cons_drop (cons : * mut RCons , n : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cons_trim (cons : * mut RCons) ; } extern "C" { pub fn r_cons_breakword (cons : * mut RCons , s : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_cons_is_breaked (cons : * mut RCons) -> bool ; } extern "C" { pub fn r_cons_break_push (cons : * mut RCons , cb : RConsBreak , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cons_break_pop (cons : * mut RCons) ; } pub type RConsGetSize = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsGetCursor = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , rows : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsIsBreaked = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) -> bool > ; pub type RConsFlush = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) > ; pub type RConsPrintfCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , format : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RConsWriteCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , data : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RConsGrepCallback = :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons , grep : * const :: std :: os :: raw :: c_char) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cons_bind_t { pub get_size : RConsGetSize , pub get_cursor : RConsGetCursor , pub cb_printf : RConsPrintfCallback , pub cb_write : RConsWriteCallback , pub is_breaked : RConsIsBreaked , pub cb_flush : RConsFlush , pub cb_grep : RConsGrepCallback , pub cons : * mut r_cons_t , } # [test] fn bindgen_test_layout_r_cons_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cons_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cons_bind_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_cons_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cons_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cons_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (get_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_cursor) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (get_cursor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_breaked) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (is_breaked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_flush) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_flush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_grep) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cb_grep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cons_bind_t) , "::" , stringify ! (cons))) ; } impl Default for r_cons_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConsBind = r_cons_bind_t ; extern "C" { pub fn r_cons_bind (cons : * mut RCons , bind : * mut RConsBind) ; } pub type RPanelsMenuCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_menu_item { pub n_sub : :: std :: os :: raw :: c_int , pub selectedIndex : :: std :: os :: raw :: c_int , pub name : * mut :: std :: os :: raw :: c_char , pub sub : * mut * mut r_panels_menu_item , pub cb : RPanelsMenuCallback , pub p : * mut RPanel , } # [test] fn bindgen_test_layout_r_panels_menu_item () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_menu_item > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_menu_item > () , 40usize , concat ! ("Size of: " , stringify ! (r_panels_menu_item))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_menu_item > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_menu_item))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_sub) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (n_sub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . selectedIndex) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (selectedIndex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sub) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (sub))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_item) , "::" , stringify ! (p))) ; } impl Default for r_panels_menu_item { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsMenuItem = r_panels_menu_item ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_menu_t { pub root : * mut RPanelsMenuItem , pub history : * mut * mut RPanelsMenuItem , pub depth : :: std :: os :: raw :: c_int , pub n_refresh : :: std :: os :: raw :: c_int , pub refreshPanels : * mut * mut RPanel , } # [test] fn bindgen_test_layout_r_panels_menu_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_menu_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_menu_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_panels_menu_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_menu_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_menu_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . history) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (history))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_refresh) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (n_refresh))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refreshPanels) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_menu_t) , "::" , stringify ! (refreshPanels))) ; } impl Default for r_panels_menu_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsMenu = r_panels_menu_t ; pub const RPanelsMode_PANEL_MODE_DEFAULT : RPanelsMode = 0 ; pub const RPanelsMode_PANEL_MODE_MENU : RPanelsMode = 1 ; pub const RPanelsMode_PANEL_MODE_ZOOM : RPanelsMode = 2 ; pub const RPanelsMode_PANEL_MODE_WINDOW : RPanelsMode = 3 ; pub const RPanelsMode_PANEL_MODE_HELP : RPanelsMode = 4 ; pub type RPanelsMode = :: std :: os :: raw :: c_uint ; pub const RPanelsFun_PANEL_FUN_SNOW : RPanelsFun = 0 ; pub const RPanelsFun_PANEL_FUN_SAKURA : RPanelsFun = 1 ; pub const RPanelsFun_PANEL_FUN_NOFUN : RPanelsFun = 2 ; pub type RPanelsFun = :: std :: os :: raw :: c_uint ; pub const RPanelsLayout_PANEL_LAYOUT_DEFAULT_STATIC : RPanelsLayout = 0 ; pub const RPanelsLayout_PANEL_LAYOUT_DEFAULT_DYNAMIC : RPanelsLayout = 1 ; pub type RPanelsLayout = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_t { pub can : * mut RConsCanvas , pub panel : * mut * mut RPanel , pub n_panels : :: std :: os :: raw :: c_int , pub columnWidth : :: std :: os :: raw :: c_int , pub curnode : :: std :: os :: raw :: c_int , pub mouse_orig_x : :: std :: os :: raw :: c_int , pub mouse_orig_y : :: std :: os :: raw :: c_int , pub autoUpdate : bool , pub mouse_on_edge_x : bool , pub mouse_on_edge_y : bool , pub panels_menu : * mut RPanelsMenu , pub db : * mut Sdb , pub rotate_db : * mut Sdb , pub modal_db : * mut Sdb , pub mht : * mut [u64 ; 11usize] , pub mode : RPanelsMode , pub fun : RPanelsFun , pub prevMode : RPanelsMode , pub layout : RPanelsLayout , pub snows : * mut RList , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_panels_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_panels_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . can) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (can))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panel) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (panel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_panels) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (n_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columnWidth) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (columnWidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curnode) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (curnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_orig_x) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_orig_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_orig_y) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_orig_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autoUpdate) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (autoUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_on_edge_x) as usize - ptr as usize } , 37usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_on_edge_x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mouse_on_edge_y) as usize - ptr as usize } , 38usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mouse_on_edge_y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels_menu) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (panels_menu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rotate_db) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (rotate_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . modal_db) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (modal_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mht) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fun) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prevMode) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (prevMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layout) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snows) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (snows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_panels_t) , "::" , stringify ! (name))) ; } impl Default for r_panels_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanels = r_panels_t ; pub const RPanelsRootState_DEFAULT : RPanelsRootState = 0 ; pub const RPanelsRootState_ROTATE : RPanelsRootState = 1 ; pub const RPanelsRootState_DEL : RPanelsRootState = 2 ; pub const RPanelsRootState_QUIT : RPanelsRootState = 3 ; pub type RPanelsRootState = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_panels_root_t { pub n_panels : :: std :: os :: raw :: c_int , pub cur_panels : :: std :: os :: raw :: c_int , pub pdc_caches : * mut Sdb , pub cur_pdc_cache : * mut Sdb , pub panels : * mut * mut RPanels , pub root_state : RPanelsRootState , } # [test] fn bindgen_test_layout_r_panels_root_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_panels_root_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_panels_root_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_panels_root_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_panels_root_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_panels_root_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_panels) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (n_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_panels) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (cur_panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdc_caches) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (pdc_caches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_pdc_cache) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (cur_pdc_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root_state) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_panels_root_t) , "::" , stringify ! (root_state))) ; } impl Default for r_panels_root_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPanelsRoot = r_panels_root_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diff_op_t { pub a_off : u64 , pub a_buf : * const u8 , pub a_len : u32 , pub b_off : u64 , pub b_buf : * const u8 , pub b_len : u32 , } # [test] fn bindgen_test_layout_r_diff_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diff_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diff_op_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_diff_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diff_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diff_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_off) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a_len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (a_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_off) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_buf) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . b_len) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_diff_op_t) , "::" , stringify ! (b_len))) ; } impl Default for r_diff_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiffOp = r_diff_op_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diff_t { pub off_a : u64 , pub off_b : u64 , pub delta : :: std :: os :: raw :: c_int , pub user : * mut :: std :: os :: raw :: c_void , pub verbose : bool , pub type_ : :: std :: os :: raw :: c_int , pub diff_cmd : * mut :: std :: os :: raw :: c_char , pub callback : :: std :: option :: Option < unsafe extern "C" fn (diff : * mut r_diff_t , user : * mut :: std :: os :: raw :: c_void , op : * mut RDiffOp) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diff_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off_a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (off_a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off_b) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (off_b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_cmd) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (diff_cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_diff_t) , "::" , stringify ! (callback))) ; } impl Default for r_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiff = r_diff_t ; pub const RLevOp_LEVEND : RLevOp = 0 ; pub const RLevOp_LEVNOP : RLevOp = 1 ; pub const RLevOp_LEVSUB : RLevOp = 2 ; pub const RLevOp_LEVADD : RLevOp = 3 ; pub const RLevOp_LEVDEL : RLevOp = 4 ; pub type RLevOp = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lev_buf { pub buf : * mut :: std :: os :: raw :: c_void , pub len : u32 , } # [test] fn bindgen_test_layout_r_lev_buf () { const UNINIT : :: std :: mem :: MaybeUninit < r_lev_buf > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lev_buf > () , 16usize , concat ! ("Size of: " , stringify ! (r_lev_buf))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lev_buf > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lev_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lev_buf) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lev_buf) , "::" , stringify ! (len))) ; } impl Default for r_lev_buf { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLevBuf = r_lev_buf ; pub type RLevMatches = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RLevBuf , b : * mut RLevBuf , ia : u32 , ib : u32) -> bool > ; pub type RDiffCallback = :: std :: option :: Option < unsafe extern "C" fn (diff : * mut RDiff , user : * mut :: std :: os :: raw :: c_void , op : * mut RDiffOp) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_diffchar_t { pub align_a : * const u8 , pub align_b : * const u8 , pub len_buf : usize , pub start_align : usize , } # [test] fn bindgen_test_layout_r_diffchar_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_diffchar_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_diffchar_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_diffchar_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_diffchar_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_diffchar_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align_a) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (align_a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align_b) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (align_b))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len_buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (len_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start_align) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_diffchar_t) , "::" , stringify ! (start_align))) ; } impl Default for r_diffchar_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDiffChar = r_diffchar_t ; extern "C" { pub fn r_diff_new () -> * mut RDiff ; } extern "C" { pub fn r_diff_new_from (off_a : u64 , off_b : u64) -> * mut RDiff ; } extern "C" { pub fn r_diff_free (d : * mut RDiff) ; } extern "C" { pub fn r_diff_buffers (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_static (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_radiff (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_delta (diff : * mut RDiff , sa : * const u8 , la : :: std :: os :: raw :: c_int , sb : * const u8 , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_tostring (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_diff_set_callback (d : * mut RDiff , callback : RDiffCallback , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_buffers_distance (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_distance_myers (diff : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_distance_levenshtein (d : * mut RDiff , a : * const u8 , la : u32 , b : * const u8 , lb : u32 , distance : * mut u32 , similarity : * mut f64) -> bool ; } extern "C" { pub fn r_diff_buffers_unified (d : * mut RDiff , a : * const u8 , la : :: std :: os :: raw :: c_int , b : * const u8 , lb : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_diff_lines (file1 : * const :: std :: os :: raw :: c_char , sa : * const :: std :: os :: raw :: c_char , la : :: std :: os :: raw :: c_int , file2 : * const :: std :: os :: raw :: c_char , sb : * const :: std :: os :: raw :: c_char , lb : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_set_delta (d : * mut RDiff , delta : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diff_gdiff (file1 : * const :: std :: os :: raw :: c_char , file2 : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int , va : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_diffchar_new (a : * const u8 , b : * const u8) -> * mut RDiffChar ; } extern "C" { pub fn r_diffchar_print (diffchar : * mut RDiffChar) ; } extern "C" { pub fn r_diffchar_free (diffchar : * mut RDiffChar) ; } extern "C" { pub fn r_diff_levenshtein_path (bufa : * mut RLevBuf , bufb : * mut RLevBuf , maxdst : u32 , levdiff : RLevMatches , chgs : * mut * mut RLevOp) -> i32 ; } extern "C" { pub fn r_punycode_encode (src : * const u8 , srclen : :: std :: os :: raw :: c_int , dstlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_punycode_decode (src : * const :: std :: os :: raw :: c_char , srclen : :: std :: os :: raw :: c_int , dstlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_queue_t { pub elems : * mut * mut :: std :: os :: raw :: c_void , pub capacity : :: std :: os :: raw :: c_uint , pub front : :: std :: os :: raw :: c_uint , pub rear : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_uint , } # [test] fn bindgen_test_layout_r_queue_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_queue_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_queue_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_queue_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_queue_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_queue_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elems) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (elems))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . front) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (front))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rear) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (rear))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_queue_t) , "::" , stringify ! (size))) ; } impl Default for r_queue_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RQueue = r_queue_t ; extern "C" { pub fn r_queue_new (n : :: std :: os :: raw :: c_int) -> * mut RQueue ; } extern "C" { pub fn r_queue_free (q : * mut RQueue) ; } extern "C" { pub fn r_queue_enqueue (q : * mut RQueue , el : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_queue_dequeue (q : * mut RQueue) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_queue_is_empty (q : * mut RQueue) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_range_item_t { pub fr : u64 , pub to : u64 , pub data : * mut u8 , pub datalen : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_range_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_range_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_range_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_range_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_range_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_range_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (fr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datalen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_range_item_t) , "::" , stringify ! (datalen))) ; } impl Default for r_range_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRangeItem = r_range_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_range_t { pub count : :: std :: os :: raw :: c_int , pub changed : :: std :: os :: raw :: c_int , pub ranges : * mut RList , } # [test] fn bindgen_test_layout_r_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_range_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . changed) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (changed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ranges) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_range_t) , "::" , stringify ! (ranges))) ; } impl Default for r_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRange = r_range_t ; extern "C" { pub fn r_range_new () -> * mut RRange ; } extern "C" { pub fn r_range_new_from_string (string : * const :: std :: os :: raw :: c_char) -> * mut RRange ; } extern "C" { pub fn r_range_free (r : * mut RRange) -> * mut RRange ; } extern "C" { pub fn r_range_item_get (r : * mut RRange , addr : u64) -> * mut RRangeItem ; } extern "C" { pub fn r_range_size (r : * mut RRange) -> u64 ; } extern "C" { pub fn r_range_add_from_string (rgs : * mut RRange , string : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_add (rgs : * mut RRange , from : u64 , to : u64 , rw : :: std :: os :: raw :: c_int) -> * mut RRangeItem ; } extern "C" { pub fn r_range_sub (rgs : * mut RRange , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_merge (rgs : * mut RRange , r : * mut RRange) ; } extern "C" { pub fn r_range_contains (rgs : * mut RRange , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_sort (rgs : * mut RRange) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_percent (rgs : * mut RRange) ; } extern "C" { pub fn r_range_list (rgs : * mut RRange , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_get_n (rgs : * mut RRange , n : :: std :: os :: raw :: c_int , from : * mut u64 , to : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_range_tostring (rgs : * mut RRange) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_range_inverse (rgs : * mut RRange , from : u64 , to : u64 , flags : :: std :: os :: raw :: c_int) -> * mut RRange ; } extern "C" { pub fn r_range_overlap (a0 : u64 , a1 : u64 , b0 : u64 , b1 : u64 , d : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_space_t { pub name : * mut :: std :: os :: raw :: c_char , pub prefixes : * mut RList , } # [test] fn bindgen_test_layout_r_space_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_space_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_space_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_space_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_space_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_space_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_space_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefixes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_space_t) , "::" , stringify ! (prefixes))) ; } impl Default for r_space_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSpace = r_space_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_spaces_t { pub name : * const :: std :: os :: raw :: c_char , pub current : * mut RSpace , pub spaces : * mut RRBTree , pub spacestack : * mut RList , pub event : * mut REvent , } # [test] fn bindgen_test_layout_r_spaces_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_spaces_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_spaces_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_spaces_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_spaces_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_spaces_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spaces) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spacestack) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (spacestack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_spaces_t) , "::" , stringify ! (event))) ; } impl Default for r_spaces_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSpaces = r_spaces_t ; extern "C" { pub fn r_spaces_new (name : * const :: std :: os :: raw :: c_char) -> * mut RSpaces ; } extern "C" { pub fn r_spaces_init (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_fini (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_free (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_purge (sp : * mut RSpaces) ; } extern "C" { pub fn r_spaces_get (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_add (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_set (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace ; } extern "C" { pub fn r_spaces_unset (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_rename (sp : * mut RSpaces , oname : * const :: std :: os :: raw :: c_char , nname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_count (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_spaces_push (sp : * mut RSpaces , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_spaces_pop (sp : * mut RSpaces) -> bool ; } pub type RBloomHashFunc = :: std :: option :: Option < unsafe extern "C" fn (data : * const :: std :: os :: raw :: c_void , len : usize , seed : u32) -> u32 > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bloom_t { _unused : [u8 ; 0] , } pub type RBloom = r_bloom_t ; extern "C" { pub fn r_bloom_new (m : usize , k : usize , hash_funcs : * mut RBloomHashFunc) -> * mut RBloom ; } extern "C" { pub fn r_bloom_free (bf : * mut RBloom) ; } extern "C" { pub fn r_bloom_init (bf : * mut RBloom , m : usize , k : usize , hash_funcs : * mut RBloomHashFunc) -> bool ; } extern "C" { pub fn r_bloom_fini (bf : * mut RBloom) ; } extern "C" { pub fn r_bloom_add (bf : * mut RBloom , data : * const :: std :: os :: raw :: c_void , len : usize) -> bool ; } extern "C" { pub fn r_bloom_check (bf : * mut RBloom , data : * const :: std :: os :: raw :: c_void , len : usize) -> bool ; } extern "C" { pub fn r_bloom_reset (bf : * mut RBloom) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RStrpool { pub str_ : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , # [doc = "  // /////////////////////////"] pub count : :: std :: os :: raw :: c_int , pub isize_ : :: std :: os :: raw :: c_int , pub idxs : * mut u32 , pub sidx : * mut u32 , pub bloom : * mut RBloom , } # [test] fn bindgen_test_layout_RStrpool () { const UNINIT : :: std :: mem :: MaybeUninit < RStrpool > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RStrpool > () , 48usize , concat ! ("Size of: " , stringify ! (RStrpool))) ; assert_eq ! (:: std :: mem :: align_of :: < RStrpool > () , 8usize , concat ! ("Alignment of " , stringify ! (RStrpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isize_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (isize_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idxs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (idxs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sidx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (sidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bloom) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RStrpool) , "::" , stringify ! (bloom))) ; } impl Default for RStrpool { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_strpool_new () -> * mut RStrpool ; } extern "C" { pub fn r_strpool_free (p : * mut RStrpool) ; } extern "C" { pub fn r_strpool_empty (p : * mut RStrpool) ; } extern "C" { pub fn r_strpool_add (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_append (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_get (p : * mut RStrpool , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_strpool_get_at (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strpool_get_nth (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_strpool_slice (p : * mut RStrpool , index : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_strpool_slice_range (p : * mut RStrpool , idx_from : :: std :: os :: raw :: c_int , idx_to : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_node_t { pub parent : * mut r_tree_node_t , pub tree : * mut r_tree_t , pub children : * mut RList , pub n_children : :: std :: os :: raw :: c_uint , pub depth : :: std :: os :: raw :: c_int , pub free : RListFree , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tree_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_node_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_tree_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (parent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . children) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_children) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (n_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_tree_node_t) , "::" , stringify ! (data))) ; } impl Default for r_tree_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTreeNode = r_tree_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_t { pub root : * mut RTreeNode , } # [test] fn bindgen_test_layout_r_tree_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_tree_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_t) , "::" , stringify ! (root))) ; } impl Default for r_tree_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTree = r_tree_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tree_visitor_t { pub pre_visit : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub post_visit : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub discover_child : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RTreeNode , arg2 : * mut r_tree_visitor_t) > , pub data : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tree_visitor_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tree_visitor_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tree_visitor_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_tree_visitor_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tree_visitor_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tree_visitor_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pre_visit) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (pre_visit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . post_visit) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (post_visit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discover_child) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (discover_child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tree_visitor_t) , "::" , stringify ! (user))) ; } impl Default for r_tree_visitor_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTreeVisitor = r_tree_visitor_t ; extern "C" { pub fn r_tree_new () -> * mut RTree ; } extern "C" { pub fn r_tree_add_node (t : * mut RTree , node : * mut RTreeNode , child_data : * mut :: std :: os :: raw :: c_void) -> * mut RTreeNode ; } extern "C" { pub fn r_tree_reset (t : * mut RTree) ; } extern "C" { pub fn r_tree_free (t : * mut RTree) ; } extern "C" { pub fn r_tree_dfs (t : * mut RTree , vis : * mut RTreeVisitor) ; } extern "C" { pub fn r_tree_bfs (t : * mut RTree , vis : * mut RTreeVisitor) ; } extern "C" { pub fn r_uleb128 (data : * const u8 , datalen : :: std :: os :: raw :: c_int , v : * mut u64 , error : * mut * const :: std :: os :: raw :: c_char) -> * const u8 ; } extern "C" { pub fn r_uleb128_decode (data : * const u8 , datalen : * mut :: std :: os :: raw :: c_int , v : * mut u64) -> * const u8 ; } extern "C" { pub fn r_uleb128_len (data : * const u8 , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_uleb128_encode (s : u64 , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_leb128 (data : * const u8 , datalen : :: std :: os :: raw :: c_int , v : * mut i64) -> * const u8 ; } extern "C" { pub fn r_sleb128 (data : * mut * const u8 , end : * const u8) -> i64 ; } pub type RRune = u32 ; extern "C" { pub fn r_utf8_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_encode_str (str_ : * const RRune , dst : * mut u8 , dst_length : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_size (ptr : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_strlen (str_ : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf8_display_width (str_ : * const u8) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_isprint (c : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16_to_utf8_l (wc : * const wchar_t , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_utf_block_name (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_utf8_to_utf16_l (cstring : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> * mut wchar_t ; } extern "C" { pub fn r_utf_block_idx (ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf_block_list (str_ : * const u8 , len : :: std :: os :: raw :: c_int , freq_list : * mut * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf_bom_encoding (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int) -> RStrEnc ; } extern "C" { pub fn r_utf16_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune , bigendian : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16le_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16be_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16le_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf16be_encode (ptr : * mut u8 , ch : RRune) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf32_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune , bigendian : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_utf32le_decode (ptr : * const u8 , ptrlen : :: std :: os :: raw :: c_int , ch : * mut RRune) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_id_pool_t { pub start_id : u32 , pub last_id : u32 , pub next_id : u32 , pub freed_ids : * mut RQueue , } # [test] fn bindgen_test_layout_r_id_pool_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_id_pool_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_id_pool_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_id_pool_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_id_pool_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_id_pool_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start_id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (start_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_id) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (last_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next_id) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (next_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . freed_ids) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_id_pool_t) , "::" , stringify ! (freed_ids))) ; } impl Default for r_id_pool_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIDPool = r_id_pool_t ; extern "C" { pub fn r_id_pool_new (start_id : u32 , last_id : u32) -> * mut RIDPool ; } extern "C" { pub fn r_id_pool_grab_id (pool : * mut RIDPool , grabber : * mut u32) -> bool ; } extern "C" { pub fn r_id_pool_kick_id (pool : * mut RIDPool , kick : u32) -> bool ; } extern "C" { pub fn r_id_pool_free (pool : * mut RIDPool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_id_storage_t { pub pool : * mut RIDPool , pub data : * mut * mut :: std :: os :: raw :: c_void , pub top_id : u32 , pub size : u32 , } # [test] fn bindgen_test_layout_r_id_storage_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_id_storage_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_id_storage_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_id_storage_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_id_storage_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_id_storage_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . top_id) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (top_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_id_storage_t) , "::" , stringify ! (size))) ; } impl Default for r_id_storage_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIDStorage = r_id_storage_t ; pub type RIDStorageForeachCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void , id : u32) -> bool > ; pub type ROIDStorageCompareCb = :: std :: option :: Option < unsafe extern "C" fn (in_ : * mut :: std :: os :: raw :: c_void , incoming : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void , cmp_res : * mut :: std :: os :: raw :: c_int) -> bool > ; extern "C" { pub fn r_id_storage_init (storage : * mut RIDStorage , start_id : u32 , last_id : u32) -> bool ; } extern "C" { pub fn r_id_storage_new (start_id : u32 , last_id : u32) -> * mut RIDStorage ; } extern "C" { pub fn r_id_storage_set (storage : * mut RIDStorage , data : * mut :: std :: os :: raw :: c_void , id : u32) -> bool ; } extern "C" { pub fn r_id_storage_add (storage : * mut RIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get (storage : * mut RIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_id_storage_get_next (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get_prev (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_delete (storage : * mut RIDStorage , id : u32) ; } extern "C" { pub fn r_id_storage_take (storage : * mut RIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_id_storage_foreach (storage : * mut RIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_id_storage_fini (storage : * mut RIDStorage) ; } extern "C" { pub fn r_id_storage_free (storage : * mut RIDStorage) ; } extern "C" { pub fn r_id_storage_list (s : * mut RIDStorage) -> * mut RList ; } extern "C" { pub fn r_id_storage_get_lowest (storage : * mut RIDStorage , id : * mut u32) -> bool ; } extern "C" { pub fn r_id_storage_get_highest (storage : * mut RIDStorage , id : * mut u32) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ordered_id_storage_t { pub permutation : * mut u32 , pub psize : u32 , pub ptop : u32 , pub data : * mut RIDStorage , pub cmp : ROIDStorageCompareCb , } # [test] fn bindgen_test_layout_r_ordered_id_storage_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ordered_id_storage_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ordered_id_storage_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_ordered_id_storage_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ordered_id_storage_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ordered_id_storage_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . permutation) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (permutation))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . psize) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (psize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptop) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (ptop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ordered_id_storage_t) , "::" , stringify ! (cmp))) ; } impl Default for r_ordered_id_storage_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type ROIDStorage = r_ordered_id_storage_t ; extern "C" { pub fn r_oids_new (start_id : u32 , last_id : u32) -> * mut ROIDStorage ; } extern "C" { pub fn r_oids_get (storage : * mut ROIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_oget (storage : * mut ROIDStorage , od : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_get_id (storage : * mut ROIDStorage , od : u32 , id : * mut u32) -> bool ; } extern "C" { pub fn r_oids_get_od (storage : * mut ROIDStorage , id : u32 , od : * mut u32) -> bool ; } extern "C" { pub fn r_oids_to_front (storage : * mut ROIDStorage , id : u32) -> bool ; } extern "C" { pub fn r_oids_to_rear (storage : * mut ROIDStorage , id : u32) -> bool ; } extern "C" { pub fn r_oids_delete (storage : * mut ROIDStorage , id : u32) ; } extern "C" { pub fn r_oids_odelete (st : * mut ROIDStorage , od : u32) ; } extern "C" { pub fn r_oids_free (storage : * mut ROIDStorage) ; } extern "C" { pub fn r_oids_add (storage : * mut ROIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32 , od : * mut u32) -> bool ; } extern "C" { pub fn r_oids_take (storage : * mut ROIDStorage , id : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_otake (st : * mut ROIDStorage , od : u32) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_foreach (storage : * mut ROIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_foreach_prev (storage : * mut ROIDStorage , cb : RIDStorageForeachCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_insert (storage : * mut ROIDStorage , data : * mut :: std :: os :: raw :: c_void , id : * mut u32 , od : * mut u32 , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_sort (storage : * mut ROIDStorage , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_oids_find (storage : * mut ROIDStorage , incoming : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> u32 ; } extern "C" { pub fn r_oids_last (storage : * mut ROIDStorage) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_oids_first (storage : * mut ROIDStorage) -> * mut :: std :: os :: raw :: c_void ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_string_t { pub length : u32 , pub string : * mut :: std :: os :: raw :: c_char , pub allocated : bool , } # [test] fn bindgen_test_layout_r_asn1_string_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_string_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_string_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_asn1_string_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_string_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_string_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allocated) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_string_t) , "::" , stringify ! (allocated))) ; } impl Default for r_asn1_string_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1String = r_asn1_string_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_list_t { pub length : u32 , pub objects : * mut * mut r_asn1_object_t , } # [test] fn bindgen_test_layout_r_asn1_list_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_list_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_list_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_asn1_list_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_list_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_list_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_list_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . objects) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_list_t) , "::" , stringify ! (objects))) ; } impl Default for r_asn1_list_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1List = r_asn1_list_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_bin_t { pub length : u32 , pub binary : * mut u8 , } # [test] fn bindgen_test_layout_r_asn1_bin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_bin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_bin_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_asn1_bin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_bin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_bin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_bin_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binary) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_bin_t) , "::" , stringify ! (binary))) ; } impl Default for r_asn1_bin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1Binary = r_asn1_bin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_object_t { pub klass : u8 , pub form : u8 , pub tag : u8 , pub sector : * const u8 , pub length : u32 , pub bitlength : u32 , pub offset : u64 , pub list : RASN1List , pub headerlength : u8 , } # [test] fn bindgen_test_layout_r_asn1_object_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_object_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_object_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_asn1_object_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_object_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_object_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . klass) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (klass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . form) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sector) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (sector))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitlength) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (bitlength))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . headerlength) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asn1_object_t) , "::" , stringify ! (headerlength))) ; } impl Default for r_asn1_object_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RASN1Object = r_asn1_object_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asn1_t { pub buffer : * const u8 , pub length : usize , pub fmtmode : :: std :: os :: raw :: c_int , pub sb : * mut RStrBuf , pub pj : * mut PJ , pub root : * mut RASN1Object , } # [test] fn bindgen_test_layout_r_asn1_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asn1_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asn1_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_asn1_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asn1_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asn1_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fmtmode) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (fmtmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asn1_t) , "::" , stringify ! (root))) ; } impl Default for r_asn1_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsn1 = r_asn1_t ; extern "C" { pub fn r_asn1_new (buffer : * const u8 , length : :: std :: os :: raw :: c_int , fmtmode : :: std :: os :: raw :: c_int) -> * mut RAsn1 ; } extern "C" { pub fn r_asn1_tostring (a : * mut RAsn1) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_free (a : * mut RAsn1) ; } extern "C" { pub fn r_asn1_oid (a : * mut RAsn1) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_object_parse (buffer_base : * const u8 , buffer : * const u8 , length : u32 , fmtmode : :: std :: os :: raw :: c_int) -> * mut RASN1Object ; } extern "C" { pub fn r_asn1_binary_new (buffer : * const u8 , length : u32) -> * mut RASN1Binary ; } extern "C" { pub fn r_asn1_string_new (string : * const :: std :: os :: raw :: c_char , allocated : bool , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_bits (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_utctime (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_time (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_integer (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_string (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_bytes (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_boolean (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_stringify_oid (buffer : * const u8 , length : u32) -> * mut RASN1String ; } extern "C" { pub fn r_asn1_object_tostring (object : * mut RASN1Object , depth : u32 , sb : * mut RStrBuf , pj : * mut PJ , fmtmode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asn1_object_free (msg : * mut RASN1Object) ; } extern "C" { pub fn r_asn1_string_free (string : * mut RASN1String) ; } extern "C" { pub fn r_asn1_binary_free (string : * mut RASN1Binary) ; } pub type RConfigCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_node_t { pub name : * mut :: std :: os :: raw :: c_char , pub flags : u32 , pub value : * mut :: std :: os :: raw :: c_char , pub i_value : u64 , pub cb_ptr_q : * mut u64 , pub cb_ptr_i : * mut :: std :: os :: raw :: c_int , pub cb_ptr_s : * mut * mut :: std :: os :: raw :: c_char , pub getter : RConfigCallback , pub setter : RConfigCallback , pub desc : * mut :: std :: os :: raw :: c_char , pub options : * mut RList , } # [test] fn bindgen_test_layout_r_config_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_node_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_config_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . i_value) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (i_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_q) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_q))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_i) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_ptr_s) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (cb_ptr_s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getter) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (getter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setter) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (setter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_config_node_t) , "::" , stringify ! (options))) ; } impl Default for r_config_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfigNode = r_config_node_t ; extern "C" { pub fn r_config_node_type (node : * mut RConfigNode) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_t { pub user : * mut :: std :: os :: raw :: c_void , pub num : * mut RNum , pub nodes : * mut RList , pub ht : * mut [u64 ; 11usize] , pub lock : bool , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_config_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_config_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 33usize , concat ! ("Offset of field: " , stringify ! (r_config_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_config_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfig = r_config_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_config_hold_t { pub cfg : * mut RConfig , pub list : * mut RList , } # [test] fn bindgen_test_layout_r_config_hold_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_config_hold_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_config_hold_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_config_hold_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_config_hold_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_config_hold_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_config_hold_t) , "::" , stringify ! (cfg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_config_hold_t) , "::" , stringify ! (list))) ; } impl Default for r_config_hold_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RConfigHold = r_config_hold_t ; extern "C" { pub fn r_config_hold_new (cfg : * mut RConfig) -> * mut RConfigHold ; } extern "C" { pub fn r_config_hold (h : * mut RConfigHold , ...) -> bool ; } extern "C" { pub fn r_config_hold_free (h : * mut RConfigHold) ; } extern "C" { pub fn r_config_hold_restore (h : * mut RConfigHold) ; } extern "C" { pub fn r_config_new (user : * mut :: std :: os :: raw :: c_void) -> * mut RConfig ; } extern "C" { pub fn r_config_clone (cfg : * mut RConfig) -> * mut RConfig ; } extern "C" { pub fn r_config_free (cfg : * mut RConfig) ; } extern "C" { pub fn r_config_lock (cfg : * mut RConfig , lock : bool) ; } extern "C" { pub fn r_config_eval (cfg : * mut RConfig , str_ : * const :: std :: os :: raw :: c_char , many : bool , error : * mut bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_bump (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_config_get_b (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_set_b (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , b : bool) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_i (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , i : u64) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_i_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , ivalue : :: std :: os :: raw :: c_int , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set_b_cb (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , bvalue : bool , cb : RConfigCallback) -> * mut RConfigNode ; } extern "C" { pub fn r_config_set (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_rm (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_get_i (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_config_get (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_desc (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char , desc : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_list (cfg : * mut RConfig , str_ : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_toggle (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_readonly (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_set_setter (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> bool ; } extern "C" { pub fn r_config_set_getter (cfg : * mut RConfig , key : * const :: std :: os :: raw :: c_char , cb : RConfigCallback) -> bool ; } extern "C" { pub fn r_config_serialize (config : * mut RConfig , db : * mut Sdb) ; } extern "C" { pub fn r_config_unserialize (config : * mut RConfig , db : * mut Sdb , err : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_config_node_desc (node : * mut RConfigNode , desc : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_tostring (node : * mut RConfigNode) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_config_node_add_option (node : * mut RConfigNode , option : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_config_node_purge_options (node : * mut RConfigNode) ; } extern "C" { pub fn r_config_node_get (cfg : * mut RConfig , name : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_new (name : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) -> * mut RConfigNode ; } extern "C" { pub fn r_config_node_free (n : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_config_node_value_format_i (buf : * mut :: std :: os :: raw :: c_char , buf_size : usize , i : u64 , node : * mut RConfigNode) ; } # [doc = " @brief Generic drawable graph node.\n\n Provides minimal information to draw something without output format specific details."] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_graph_node_info_t { pub title : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , # [doc = " @brief Optional offset for the object corresponding to node.\n\n Interactive output modes can use it to provide actions like seeking to\n this position or modify the object."] pub offset : u64 , } # [test] fn bindgen_test_layout_r_anal_graph_node_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_graph_node_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_graph_node_info_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_graph_node_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_graph_node_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_graph_node_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_graph_node_info_t) , "::" , stringify ! (offset))) ; } impl Default for r_anal_graph_node_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " @brief Generic drawable graph node.\n\n Provides minimal information to draw something without output format specific details."] pub type RGraphNodeInfo = r_anal_graph_node_info_t ; extern "C" { pub fn r_graph_free_node_info (ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_graph_create_node_info (title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut RGraphNodeInfo ; } extern "C" { pub fn r_graph_add_node_info (graph : * mut RGraph , title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut RGraphNode ; } extern "C" { # [doc = " @brief Convert graph to Graphviz dot format.\n\n @param graph Graph with RGraphNodeInfo used as node user data\n @param node_properties List node styling attributes. Can be set to NULL.\n @param edge_properties List edge styling attributes. Can be set to NULL."] pub fn r_graph_drawable_to_dot (graph : * mut RGraph , node_properties : * const :: std :: os :: raw :: c_char , edge_properties : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { # [doc = " @brief Convert graph to JSON.\n\n @param[in] graph Graph to convert\n @param[out] pj Json output structure. Can be used to include the resulting JSON value inside bigger JSON.\n @param[in] use_offset Set this to true if graph uses \\ref RGraphNodeInfo::offset offset field."] pub fn r_graph_drawable_to_json (graph : * mut RGraph , pj : * mut PJ , use_offset : bool) ; } extern "C" { pub fn r_bplist_parse (pj : * mut PJ , data : * const u8 , data_len : usize) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_validity_t { pub notBefore : * mut RASN1String , pub notAfter : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_validity_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_validity_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_validity_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_validity_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_validity_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_validity_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notBefore) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_validity_t) , "::" , stringify ! (notBefore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notAfter) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_validity_t) , "::" , stringify ! (notAfter))) ; } impl Default for r_x509_validity_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Validity = r_x509_validity_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_name_t { pub length : u32 , pub oids : * mut * mut RASN1String , pub names : * mut * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_name_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_name_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_name_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_name_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_name_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_name_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oids) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (oids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . names) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_name_t) , "::" , stringify ! (names))) ; } impl Default for r_x509_name_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Name = r_x509_name_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_algorithmidentifier_t { pub algorithm : * mut RASN1String , pub parameters : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_algorithmidentifier_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_algorithmidentifier_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_algorithmidentifier_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_algorithmidentifier_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_algorithmidentifier_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_algorithmidentifier_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_algorithmidentifier_t) , "::" , stringify ! (algorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parameters) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_algorithmidentifier_t) , "::" , stringify ! (parameters))) ; } impl Default for r_x509_algorithmidentifier_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509AlgorithmIdentifier = r_x509_algorithmidentifier_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_subjectpublickeyinfo_t { pub algorithm : RX509AlgorithmIdentifier , pub subjectPublicKey : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_subjectpublickeyinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_subjectpublickeyinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_subjectpublickeyinfo_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_subjectpublickeyinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_subjectpublickeyinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_subjectpublickeyinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_subjectpublickeyinfo_t) , "::" , stringify ! (algorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectPublicKey) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_subjectpublickeyinfo_t) , "::" , stringify ! (subjectPublicKey))) ; } impl Default for r_x509_subjectpublickeyinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509SubjectPublicKeyInfo = r_x509_subjectpublickeyinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_extension_t { pub extnID : * mut RASN1String , pub critical : bool , pub extnValue : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_extension_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_extension_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_extension_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_x509_extension_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_extension_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_extension_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extnID) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (extnID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . critical) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (critical))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extnValue) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_extension_t) , "::" , stringify ! (extnValue))) ; } impl Default for r_x509_extension_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Extension = r_x509_extension_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_extensions_t { pub length : u32 , pub extensions : * mut * mut RX509Extension , } # [test] fn bindgen_test_layout_r_x509_extensions_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_extensions_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_extensions_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_extensions_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_extensions_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_extensions_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_extensions_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extensions) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_extensions_t) , "::" , stringify ! (extensions))) ; } impl Default for r_x509_extensions_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Extensions = r_x509_extensions_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_tbscertificate_t { pub version : u32 , pub serialNumber : * mut RASN1String , pub signature : RX509AlgorithmIdentifier , pub issuer : RX509Name , pub validity : RX509Validity , pub subject : RX509Name , pub subjectPublicKeyInfo : RX509SubjectPublicKeyInfo , pub issuerUniqueID : * mut RASN1Binary , pub subjectUniqueID : * mut RASN1Binary , pub extensions : RX509Extensions , } # [test] fn bindgen_test_layout_r_x509_tbscertificate_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_tbscertificate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_tbscertificate_t > () , 152usize , concat ! ("Size of: " , stringify ! (r_x509_tbscertificate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_tbscertificate_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_tbscertificate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serialNumber) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (serialNumber))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . validity) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (validity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subject) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subject))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectPublicKeyInfo) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subjectPublicKeyInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuerUniqueID) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (issuerUniqueID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subjectUniqueID) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (subjectUniqueID))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extensions) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_x509_tbscertificate_t) , "::" , stringify ! (extensions))) ; } impl Default for r_x509_tbscertificate_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509TBSCertificate = r_x509_tbscertificate_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_certificate_t { pub tbsCertificate : RX509TBSCertificate , pub algorithmIdentifier : RX509AlgorithmIdentifier , pub signature : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_x509_certificate_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_certificate_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_certificate_t > () , 176usize , concat ! ("Size of: " , stringify ! (r_x509_certificate_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_certificate_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_certificate_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tbsCertificate) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (tbsCertificate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . algorithmIdentifier) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (algorithmIdentifier))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificate_t) , "::" , stringify ! (signature))) ; } impl Default for r_x509_certificate_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509Certificate = r_x509_certificate_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_crlentry { pub userCertificate : * mut RASN1Binary , pub revocationDate : * mut RASN1String , } # [test] fn bindgen_test_layout_r_x509_crlentry () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_crlentry > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_crlentry > () , 16usize , concat ! ("Size of: " , stringify ! (r_x509_crlentry))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_crlentry > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_crlentry))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . userCertificate) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_crlentry) , "::" , stringify ! (userCertificate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revocationDate) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_x509_crlentry) , "::" , stringify ! (revocationDate))) ; } impl Default for r_x509_crlentry { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509CRLEntry = r_x509_crlentry ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_x509_certificaterevocationlist { pub signature : RX509AlgorithmIdentifier , pub issuer : RX509Name , pub lastUpdate : * mut RASN1String , pub nextUpdate : * mut RASN1String , pub length : u32 , pub revokedCertificates : * mut * mut RX509CRLEntry , } # [test] fn bindgen_test_layout_r_x509_certificaterevocationlist () { const UNINIT : :: std :: mem :: MaybeUninit < r_x509_certificaterevocationlist > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_x509_certificaterevocationlist > () , 72usize , concat ! ("Size of: " , stringify ! (r_x509_certificaterevocationlist))) ; assert_eq ! (:: std :: mem :: align_of :: < r_x509_certificaterevocationlist > () , 8usize , concat ! ("Alignment of " , stringify ! (r_x509_certificaterevocationlist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastUpdate) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (lastUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nextUpdate) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (nextUpdate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revokedCertificates) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_x509_certificaterevocationlist) , "::" , stringify ! (revokedCertificates))) ; } impl Default for r_x509_certificaterevocationlist { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RX509CertificateRevocationList = r_x509_certificaterevocationlist ; extern "C" { pub fn r_x509_crl_parse (object : * mut RASN1Object) -> * mut RX509CertificateRevocationList ; } extern "C" { pub fn r_x509_crl_tostring (crl : * mut RX509CertificateRevocationList , pad : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_x509_crl_json (pj : * mut PJ , crl : * mut RX509CertificateRevocationList) ; } extern "C" { pub fn r_x509_certificate_parse (object : * mut RASN1Object) -> * mut RX509Certificate ; } extern "C" { pub fn r_x509_certificate_free (certificate : * mut RX509Certificate) ; } extern "C" { pub fn r_x509_certificate_tostring (certificate : * mut RX509Certificate , pad : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_x509_certificate_json (pj : * mut PJ , certificate : * mut RX509Certificate) ; } extern "C" { pub fn r_x509_certificate_dump (cert : * mut RX509Certificate , pad : * const :: std :: os :: raw :: c_char , sb : * mut RStrBuf) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_certificaterevocationlists_t { pub length : u32 , pub elements : * mut * mut RX509CertificateRevocationList , } # [test] fn bindgen_test_layout_r_pkcs7_certificaterevocationlists_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_certificaterevocationlists_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_certificaterevocationlists_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_certificaterevocationlists_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_certificaterevocationlists_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_certificaterevocationlists_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_certificaterevocationlists_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_certificaterevocationlists_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_certificaterevocationlists_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7CertificateRevocationLists = r_pkcs7_certificaterevocationlists_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_extendedcertificatesandcertificates_t { pub length : u32 , pub elements : * mut * mut RX509Certificate , } # [test] fn bindgen_test_layout_r_pkcs7_extendedcertificatesandcertificates_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_extendedcertificatesandcertificates_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_extendedcertificatesandcertificates_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_extendedcertificatesandcertificates_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_extendedcertificatesandcertificates_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_extendedcertificatesandcertificates_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7ExtendedCertificatesAndCertificates = r_pkcs7_extendedcertificatesandcertificates_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_digestalgorithmidentifiers_t { pub length : u32 , pub elements : * mut * mut RX509AlgorithmIdentifier , } # [test] fn bindgen_test_layout_r_pkcs7_digestalgorithmidentifiers_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_digestalgorithmidentifiers_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_digestalgorithmidentifiers_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_digestalgorithmidentifiers_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_digestalgorithmidentifiers_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_digestalgorithmidentifiers_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7DigestAlgorithmIdentifiers = r_pkcs7_digestalgorithmidentifiers_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_contentinfo_t { pub contentType : * mut RASN1String , pub content : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_contentinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_contentinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_contentinfo_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_contentinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_contentinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_contentinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentType) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_contentinfo_t) , "::" , stringify ! (contentType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_contentinfo_t) , "::" , stringify ! (content))) ; } impl Default for r_pkcs7_contentinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7ContentInfo = r_pkcs7_contentinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_issuerandserialnumber_t { pub issuer : RX509Name , pub serialNumber : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_issuerandserialnumber_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_issuerandserialnumber_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_issuerandserialnumber_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_pkcs7_issuerandserialnumber_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_issuerandserialnumber_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_issuerandserialnumber_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuer) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_issuerandserialnumber_t) , "::" , stringify ! (issuer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . serialNumber) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_issuerandserialnumber_t) , "::" , stringify ! (serialNumber))) ; } impl Default for r_pkcs7_issuerandserialnumber_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7IssuerAndSerialNumber = r_pkcs7_issuerandserialnumber_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_attribute_t { pub oid : * mut RASN1String , pub data : * mut RASN1Binary , } # [test] fn bindgen_test_layout_r_pkcs7_attribute_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_attribute_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_attribute_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_attribute_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_attribute_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_attribute_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attribute_t) , "::" , stringify ! (oid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attribute_t) , "::" , stringify ! (data))) ; } impl Default for r_pkcs7_attribute_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7Attribute = r_pkcs7_attribute_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_attributes_t { pub length : u32 , pub elements : * mut * mut RPKCS7Attribute , } # [test] fn bindgen_test_layout_r_pkcs7_attributes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_attributes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_attributes_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_attributes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_attributes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_attributes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attributes_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_attributes_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_attributes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7Attributes = r_pkcs7_attributes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signerinfo_t { pub version : u32 , pub issuerAndSerialNumber : RPKCS7IssuerAndSerialNumber , pub digestAlgorithm : RX509AlgorithmIdentifier , pub authenticatedAttributes : RPKCS7Attributes , pub digestEncryptionAlgorithm : RX509AlgorithmIdentifier , pub encryptedDigest : * mut RASN1Binary , pub unauthenticatedAttributes : RPKCS7Attributes , } # [test] fn bindgen_test_layout_r_pkcs7_signerinfo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signerinfo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signerinfo_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signerinfo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signerinfo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signerinfo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . issuerAndSerialNumber) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (issuerAndSerialNumber))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (digestAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . authenticatedAttributes) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (authenticatedAttributes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestEncryptionAlgorithm) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (digestEncryptionAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encryptedDigest) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (encryptedDigest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unauthenticatedAttributes) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfo_t) , "::" , stringify ! (unauthenticatedAttributes))) ; } impl Default for r_pkcs7_signerinfo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignerInfo = r_pkcs7_signerinfo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signerinfos_t { pub length : u32 , pub elements : * mut * mut RPKCS7SignerInfo , } # [test] fn bindgen_test_layout_r_pkcs7_signerinfos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signerinfos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signerinfos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signerinfos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signerinfos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signerinfos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfos_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elements) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signerinfos_t) , "::" , stringify ! (elements))) ; } impl Default for r_pkcs7_signerinfos_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignerInfos = r_pkcs7_signerinfos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_signeddata_t { pub version : u32 , pub digestAlgorithms : RPKCS7DigestAlgorithmIdentifiers , pub contentInfo : RPKCS7ContentInfo , pub certificates : RPKCS7ExtendedCertificatesAndCertificates , pub crls : RPKCS7CertificateRevocationLists , pub signerinfos : RPKCS7SignerInfos , } # [test] fn bindgen_test_layout_r_pkcs7_signeddata_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_signeddata_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_signeddata_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_pkcs7_signeddata_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_signeddata_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_signeddata_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithms) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (digestAlgorithms))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentInfo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (contentInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . certificates) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (certificates))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crls) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (crls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signerinfos) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_signeddata_t) , "::" , stringify ! (signerinfos))) ; } impl Default for r_pkcs7_signeddata_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPKCS7SignedData = r_pkcs7_signeddata_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pkcs7_container_t { pub contentType : * mut RASN1String , pub signedData : RPKCS7SignedData , } # [test] fn bindgen_test_layout_r_pkcs7_container_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pkcs7_container_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pkcs7_container_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_pkcs7_container_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pkcs7_container_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pkcs7_container_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contentType) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_container_t) , "::" , stringify ! (contentType))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signedData) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pkcs7_container_t) , "::" , stringify ! (signedData))) ; } impl Default for r_pkcs7_container_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCMS = r_pkcs7_container_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcAttributeTypeAndOptionalValue { pub type_ : * mut RASN1String , pub data : * mut RASN1Binary , } # [test] fn bindgen_test_layout_SpcAttributeTypeAndOptionalValue () { const UNINIT : :: std :: mem :: MaybeUninit < SpcAttributeTypeAndOptionalValue > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcAttributeTypeAndOptionalValue > () , 16usize , concat ! ("Size of: " , stringify ! (SpcAttributeTypeAndOptionalValue))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcAttributeTypeAndOptionalValue > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcAttributeTypeAndOptionalValue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcAttributeTypeAndOptionalValue) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (SpcAttributeTypeAndOptionalValue) , "::" , stringify ! (data))) ; } impl Default for SpcAttributeTypeAndOptionalValue { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcDigestInfo { pub digestAlgorithm : RX509AlgorithmIdentifier , pub digest : * mut RASN1Binary , } # [test] fn bindgen_test_layout_SpcDigestInfo () { const UNINIT : :: std :: mem :: MaybeUninit < SpcDigestInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcDigestInfo > () , 24usize , concat ! ("Size of: " , stringify ! (SpcDigestInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcDigestInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcDigestInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digestAlgorithm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcDigestInfo) , "::" , stringify ! (digestAlgorithm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digest) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SpcDigestInfo) , "::" , stringify ! (digest))) ; } impl Default for SpcDigestInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct SpcIndirectDataContent { pub data : SpcAttributeTypeAndOptionalValue , pub messageDigest : SpcDigestInfo , } # [test] fn bindgen_test_layout_SpcIndirectDataContent () { const UNINIT : :: std :: mem :: MaybeUninit < SpcIndirectDataContent > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < SpcIndirectDataContent > () , 40usize , concat ! ("Size of: " , stringify ! (SpcIndirectDataContent))) ; assert_eq ! (:: std :: mem :: align_of :: < SpcIndirectDataContent > () , 8usize , concat ! ("Alignment of " , stringify ! (SpcIndirectDataContent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (SpcIndirectDataContent) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . messageDigest) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (SpcIndirectDataContent) , "::" , stringify ! (messageDigest))) ; } impl Default for SpcIndirectDataContent { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_pkcs7_cms_parse (buffer : * const u8 , length : u32) -> * mut RCMS ; } extern "C" { pub fn r_pkcs7_cms_free (container : * mut RCMS) ; } extern "C" { pub fn r_pkcs7_cms_tostring (container : * mut RCMS) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_pkcs7_cms_json (container : * mut RCMS) -> * mut PJ ; } extern "C" { pub fn r_pkcs7_spcinfo_parse (cms : * mut RCMS) -> * mut SpcIndirectDataContent ; } extern "C" { pub fn r_pkcs7_spcinfo_free (spcinfo : * mut SpcIndirectDataContent) ; } extern "C" { pub fn r_protobuf_decode (buffer : * const u8 , size : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } pub type RRef = :: std :: os :: raw :: c_int ; pub const RTokenType_R_TOKEN_NONE : RTokenType = 0 ; pub const RTokenType_R_TOKEN_INT : RTokenType = 1 ; pub const RTokenType_R_TOKEN_FLOAT : RTokenType = 2 ; pub const RTokenType_R_TOKEN_WORD : RTokenType = 3 ; pub const RTokenType_R_TOKEN_HASH : RTokenType = 4 ; pub const RTokenType_R_TOKEN_STRING : RTokenType = 5 ; pub const RTokenType_R_TOKEN_COMMENT : RTokenType = 6 ; pub const RTokenType_R_TOKEN_MATH : RTokenType = 7 ; pub const RTokenType_R_TOKEN_GROUP : RTokenType = 8 ; pub const RTokenType_R_TOKEN_BEGIN : RTokenType = 9 ; pub const RTokenType_R_TOKEN_END : RTokenType = 10 ; pub type RTokenType = :: std :: os :: raw :: c_uint ; pub type RTokenizerCallback = :: std :: option :: Option < unsafe extern "C" fn (tok : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_tokenizer_t { pub hex : bool , pub escape : bool , pub buf : * const :: std :: os :: raw :: c_char , pub ch : :: std :: os :: raw :: c_char , pub begin : usize , pub indent : :: std :: os :: raw :: c_int , pub end : usize , pub type_ : RTokenType , pub cb : RTokenizerCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_tokenizer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_tokenizer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_tokenizer_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_tokenizer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_tokenizer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_tokenizer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hex) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (hex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . escape) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (escape))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ch) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . begin) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . indent) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (indent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_tokenizer_t) , "::" , stringify ! (user))) ; } impl Default for r_tokenizer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RTokenizer = r_tokenizer_t ; extern "C" { pub fn r_str_tokenize_json (buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_tokenizer_new () -> * mut RTokenizer ; } extern "C" { pub fn r_str_tokenize (buf : * const :: std :: os :: raw :: c_char , cb : RTokenizerCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_axml_decode (data : * const u8 , data_size : u64 , pj : * mut PJ) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cfloat_profile_t { pub sign_bits : :: std :: os :: raw :: c_int , pub exp_bits : :: std :: os :: raw :: c_int , pub mant_bits : :: std :: os :: raw :: c_int , pub bias : :: std :: os :: raw :: c_int , pub big_endian : bool , pub explicit_leading_bit : bool , } # [test] fn bindgen_test_layout_r_cfloat_profile_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cfloat_profile_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cfloat_profile_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_cfloat_profile_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cfloat_profile_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_cfloat_profile_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (sign_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exp_bits) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (exp_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mant_bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (mant_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bias) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (bias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . explicit_leading_bit) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_profile_t) , "::" , stringify ! (explicit_leading_bit))) ; } pub type RCFloatProfile = r_cfloat_profile_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_cfloat_value_t { pub words : [u64 ; 4usize] , } # [test] fn bindgen_test_layout_r_cfloat_value_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cfloat_value_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cfloat_value_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cfloat_value_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cfloat_value_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cfloat_value_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . words) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cfloat_value_t) , "::" , stringify ! (words))) ; } pub type RCFloatValue = r_cfloat_value_t ; extern "C" { pub fn r_cfloat_parse (buf : * const u8 , buf_size : usize , profile : * const RCFloatProfile) -> f64 ; } extern "C" { pub fn r_cfloat_parse_simple (buf : * const u8 , buf_size : usize , exp_bits : :: std :: os :: raw :: c_int , mant_bits : :: std :: os :: raw :: c_int) -> f64 ; } extern "C" { pub fn r_cfloat_write (value : f64 , profile : * const RCFloatProfile , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_write_simple (value : f64 , exp_bits : :: std :: os :: raw :: c_int , mant_bits : :: std :: os :: raw :: c_int , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_parse_ex (buf : * const u8 , buf_size : usize , profile : * const RCFloatProfile , out : * mut RCFloatValue) -> bool ; } extern "C" { pub fn r_cfloat_write_ex (value : * const RCFloatValue , profile : * const RCFloatProfile , buf : * mut u8 , buf_size : usize) -> bool ; } extern "C" { pub fn r_cfloat_value_to_double (value : * const RCFloatValue , profile : * const RCFloatProfile) -> f64 ; } extern "C" { pub fn r_cfloat_value_to_longdouble (value : * const RCFloatValue , profile : * const RCFloatProfile) -> u128 ; } extern "C" { pub fn r_cfloat_value_from_double (value : * mut RCFloatValue , d : f64 , profile : * const RCFloatProfile) ; } extern "C" { pub fn r_cfloat_value_from_longdouble (value : * mut RCFloatValue , ld : u128 , profile : * const RCFloatProfile) ; } extern "C" { pub fn r_cfloat_profile_from_name (name : * const :: std :: os :: raw :: c_char) -> * const RCFloatProfile ; } extern "C" { pub fn r_cfloat_profile_from_bits (bits : :: std :: os :: raw :: c_int , profile : * mut RCFloatProfile) -> bool ; } extern "C" { pub fn r_lz4_compress (obuf : * mut u8 , buf : * mut u8 , buf_size : usize , max_chain : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_lz4_decompress (input : * const u8 , input_size : usize , output_size : * mut usize) -> * mut u8 ; } extern "C" { pub fn r_lz4_decompress_block (g_buf : * mut u8 , comp_len : :: std :: os :: raw :: c_int , pp : * mut :: std :: os :: raw :: c_int , obuf : * mut u8 , osz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_getopt_t { pub err : bool , pub ind : :: std :: os :: raw :: c_int , pub opt : :: std :: os :: raw :: c_int , pub arg : * const :: std :: os :: raw :: c_char , pub place : * const :: std :: os :: raw :: c_char , pub argc : :: std :: os :: raw :: c_int , pub argv : * mut * const :: std :: os :: raw :: c_char , pub ostr : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_getopt_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_getopt_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_getopt_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_getopt_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_getopt_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_getopt_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . err) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (err))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ind) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (ind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arg) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (arg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . place) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (place))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argc) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argv) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (argv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ostr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_getopt_t) , "::" , stringify ! (ostr))) ; } impl Default for r_getopt_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RGetopt = r_getopt_t ; extern "C" { pub fn r_getopt_init (go : * mut RGetopt , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char , ostr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_getopt_next (opt : * mut RGetopt) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_main_t { pub name : * const :: std :: os :: raw :: c_char , pub main : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_main_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_main_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_main_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_main_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_main_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_main_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_main_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_main_t) , "::" , stringify ! (main))) ; } impl Default for r_main_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMain = r_main_t ; pub type RMainCallback = :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_main_new (name : * const :: std :: os :: raw :: c_char) -> * mut RMain ; } extern "C" { pub fn r_main_free (m : * mut RMain) ; } extern "C" { pub fn r_main_run (m : * mut RMain , argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_version_print (program : * const :: std :: os :: raw :: c_char , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_ravc2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rax2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rarun2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rahash2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rabin2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_radare2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rasm2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2agent (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rafind2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_radiff2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_ragg2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rasign2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2pm (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rapatch2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_rafs2 (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_main_r2_build_flags (out_cflags : * mut * mut :: std :: os :: raw :: c_char , out_ldflags : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } pub type RCoreCmd = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; pub type RCoreCmdF = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RCoreCallAt = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreDebugBpHit = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , bp : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RCoreDebugSyscallHit = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) > ; pub type RCoreCmdStr = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreBindHelp = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , help : * const * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreCmdStrF = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , cmd : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char > ; pub type RCorePuts = :: std :: option :: Option < unsafe extern "C" fn (cmd : * const :: std :: os :: raw :: c_char) > ; pub type RCoreSetArchBits = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) > ; pub type RCoreIsMapped = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64 , perm : :: std :: os :: raw :: c_int) -> bool > ; pub type RCoreDebugMapsSync = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RCoreGetName = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , off : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RCoreGetNameDelta = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , off : u64) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreSeekArchBits = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64) > ; pub type RCoreConfigGetB = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RCoreConfigGetI = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> u64 > ; pub type RCoreConfigGet = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , key : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char > ; pub type RCoreNumGet = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , str_ : * const :: std :: os :: raw :: c_char) -> u64 > ; pub type RCorePJWithEncoding = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_bind_t { pub core : * mut :: std :: os :: raw :: c_void , pub cmd : RCoreCmd , pub cmdf : RCoreCmdF , pub callAt : RCoreCallAt , pub cmdStr : RCoreCmdStr , pub cmdStrF : RCoreCmdStrF , pub help : RCoreBindHelp , pub puts : RCorePuts , pub bpHit : RCoreDebugBpHit , pub sysHit : RCoreDebugSyscallHit , pub setArchBits : RCoreSetArchBits , pub getName : RCoreGetName , pub getNameDelta : RCoreGetNameDelta , pub archBits : RCoreSeekArchBits , pub cfgGetB : RCoreConfigGetB , pub cfgGetI : RCoreConfigGetI , pub cfgGet : RCoreConfigGet , pub numGet : RCoreNumGet , pub isMapped : RCoreIsMapped , pub syncDebugMaps : RCoreDebugMapsSync , pub pjWithEncoding : RCorePJWithEncoding , } # [test] fn bindgen_test_layout_r_core_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_bind_t > () , 168usize , concat ! ("Size of: " , stringify ! (r_core_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callAt) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (callAt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdStr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdStrF) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cmdStrF))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . puts) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (puts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpHit) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (bpHit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysHit) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (sysHit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setArchBits) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (setArchBits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getName) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (getName))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getNameDelta) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (getNameDelta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . archBits) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (archBits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGetB) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGetB))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGetI) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGetI))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfgGet) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (cfgGet))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numGet) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (numGet))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isMapped) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (isMapped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syncDebugMaps) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (syncDebugMaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pjWithEncoding) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_core_bind_t) , "::" , stringify ! (pjWithEncoding))) ; } impl Default for r_core_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreBind = r_core_bind_t ; pub type in_addr_t = u32 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct in_addr { pub s_addr : in_addr_t , } # [test] fn bindgen_test_layout_in_addr () { const UNINIT : :: std :: mem :: MaybeUninit < in_addr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < in_addr > () , 4usize , concat ! ("Size of: " , stringify ! (in_addr))) ; assert_eq ! (:: std :: mem :: align_of :: < in_addr > () , 4usize , concat ! ("Alignment of " , stringify ! (in_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s_addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (in_addr) , "::" , stringify ! (s_addr))) ; } pub type in_port_t = u16 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct sockaddr_in { pub sin_family : sa_family_t , pub sin_port : in_port_t , pub sin_addr : in_addr , pub sin_zero : [:: std :: os :: raw :: c_uchar ; 8usize] , } # [test] fn bindgen_test_layout_sockaddr_in () { const UNINIT : :: std :: mem :: MaybeUninit < sockaddr_in > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < sockaddr_in > () , 16usize , concat ! ("Size of: " , stringify ! (sockaddr_in))) ; assert_eq ! (:: std :: mem :: align_of :: < sockaddr_in > () , 4usize , concat ! ("Alignment of " , stringify ! (sockaddr_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_family) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_port) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_addr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sin_zero) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (sockaddr_in) , "::" , stringify ! (sin_zero))) ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_socket_t { pub fd : :: std :: os :: raw :: c_int , pub is_ssl : bool , pub proto : :: std :: os :: raw :: c_int , pub local : :: std :: os :: raw :: c_int , pub port : :: std :: os :: raw :: c_int , pub sa : sockaddr_in , } # [test] fn bindgen_test_layout_r_socket_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_t > () , 36usize , concat ! ("Size of: " , stringify ! (r_socket_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_socket_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_ssl) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (is_ssl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . proto) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . local) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (local))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sa) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_socket_t) , "::" , stringify ! (sa))) ; } pub type RSocket = r_socket_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_http_options { pub authtokens : * mut RList , pub accept_timeout : bool , pub timeout : :: std :: os :: raw :: c_int , pub httpauth : bool , } # [test] fn bindgen_test_layout_r_socket_http_options () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_http_options > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_http_options > () , 24usize , concat ! ("Size of: " , stringify ! (r_socket_http_options))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_http_options > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_http_options))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . authtokens) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (authtokens))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accept_timeout) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (accept_timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timeout) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . httpauth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_options) , "::" , stringify ! (httpauth))) ; } impl Default for r_socket_http_options { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketHTTPOptions = r_socket_http_options ; extern "C" { pub fn r_socket_new_from_fd (fd : :: std :: os :: raw :: c_int) -> * mut RSocket ; } extern "C" { pub fn r_socket_new (is_ssl : bool) -> * mut RSocket ; } extern "C" { pub fn r_socket_spawn (s : * mut RSocket , cmd : * const :: std :: os :: raw :: c_char , timeout : :: std :: os :: raw :: c_uint) -> bool ; } extern "C" { pub fn r_socket_connect (s : * mut RSocket , host : * const :: std :: os :: raw :: c_char , port : * const :: std :: os :: raw :: c_char , proto : :: std :: os :: raw :: c_int , timeout : :: std :: os :: raw :: c_uint) -> bool ; } extern "C" { pub fn r_socket_connect_serial (sock : * mut RSocket , path : * const :: std :: os :: raw :: c_char , speed : :: std :: os :: raw :: c_int , parity : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_listen (s : * mut RSocket , port : * const :: std :: os :: raw :: c_char , certfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_port_by_name (name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_close_fd (s : * mut RSocket) -> bool ; } extern "C" { pub fn r_socket_close (s : * mut RSocket) -> bool ; } extern "C" { pub fn r_socket_free (s : * mut RSocket) ; } extern "C" { pub fn r_socket_accept (s : * mut RSocket) -> * mut RSocket ; } extern "C" { pub fn r_socket_accept_timeout (s : * mut RSocket , timeout : :: std :: os :: raw :: c_uint) -> * mut RSocket ; } extern "C" { pub fn r_socket_block_time (s : * mut RSocket , block : bool , sec : :: std :: os :: raw :: c_int , usec : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_socket_flush (s : * mut RSocket) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_ready (s : * mut RSocket , secs : :: std :: os :: raw :: c_int , usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_tostring (s : * mut RSocket) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_write (s : * mut RSocket , buf : * const :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_puts (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_printf (s : * mut RSocket , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_socket_read (s : * mut RSocket , read : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_read_block (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_gets (s : * mut RSocket , buf : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_slurp (s : * mut RSocket , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_socket_is_connected (arg1 : * mut RSocket) -> bool ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_socket_proc_t { pub fd0 : [:: std :: os :: raw :: c_int ; 2usize] , pub fd1 : [:: std :: os :: raw :: c_int ; 2usize] , pub pid : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_socket_proc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_proc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_proc_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_socket_proc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_proc_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_socket_proc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd0) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (fd0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd1) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (fd1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_proc_t) , "::" , stringify ! (pid))) ; } pub type RSocketProc = r_socket_proc_t ; extern "C" { pub fn r_socket_proc_open (argv : * const * mut :: std :: os :: raw :: c_char) -> * mut RSocketProc ; } extern "C" { pub fn r_socket_proc_close (sp : * mut RSocketProc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_read (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_uchar , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_gets (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_write (sp : * mut RSocketProc , buf : * mut :: std :: os :: raw :: c_void , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_proc_printf (sp : * mut RSocketProc , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_socket_proc_ready (sp : * mut RSocketProc , secs : :: std :: os :: raw :: c_int , usecs : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_http_get (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , code : * mut :: std :: os :: raw :: c_int , rlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_http_post (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , code : * mut :: std :: os :: raw :: c_int , rlen : * mut :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_http_download (url : * const :: std :: os :: raw :: c_char , headers : * mut * const :: std :: os :: raw :: c_char , filepath : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_http_server_set_breaked (b : * mut bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_http_request { pub s : * mut RSocket , pub path : * mut :: std :: os :: raw :: c_char , pub host : * mut :: std :: os :: raw :: c_char , pub agent : * mut :: std :: os :: raw :: c_char , pub method : * mut :: std :: os :: raw :: c_char , pub referer : * mut :: std :: os :: raw :: c_char , pub data : * mut u8 , pub data_length : :: std :: os :: raw :: c_int , pub auth : bool , } # [test] fn bindgen_test_layout_r_socket_http_request () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_http_request > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_http_request > () , 64usize , concat ! ("Size of: " , stringify ! (r_socket_http_request))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_http_request > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_http_request))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . host) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . agent) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (agent))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . method) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (method))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . referer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (referer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_length) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (data_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . auth) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_socket_http_request) , "::" , stringify ! (auth))) ; } impl Default for r_socket_http_request { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketHTTPRequest = r_socket_http_request ; extern "C" { pub fn r_socket_http_accept (s : * mut RSocket , so : * mut RSocketHTTPOptions) -> * mut RSocketHTTPRequest ; } extern "C" { pub fn r_socket_http_response (rs : * mut RSocketHTTPRequest , code : :: std :: os :: raw :: c_int , out : * const :: std :: os :: raw :: c_char , x : :: std :: os :: raw :: c_int , headers : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_socket_http_close (rs : * mut RSocketHTTPRequest) ; } extern "C" { pub fn r_socket_http_handle_upload (str_ : * const u8 , len : :: std :: os :: raw :: c_int , olen : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_socket_http_free (rs : * mut RSocketHTTPRequest) ; } pub type rap_server_open = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , file : * const :: std :: os :: raw :: c_char , flg : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_seek = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , offset : u64 , whence : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_read = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_write = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type rap_server_cmd = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , command : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type rap_server_close = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_socket_rap_server_t { pub fd : * mut RSocket , pub port : * mut :: std :: os :: raw :: c_char , pub buf : [u8 ; 4128usize] , pub open : rap_server_open , pub seek : rap_server_seek , pub read : rap_server_read , pub write : rap_server_write , pub system : rap_server_cmd , pub cmd : rap_server_cmd , pub close : rap_server_close , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_socket_rap_server_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_socket_rap_server_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_socket_rap_server_t > () , 4208usize , concat ! ("Size of: " , stringify ! (r_socket_rap_server_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_socket_rap_server_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_socket_rap_server_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 4144usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 4152usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 4160usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 4168usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 4176usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 4184usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 4192usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_socket_rap_server_t) , "::" , stringify ! (user))) ; } impl Default for r_socket_rap_server_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSocketRapServer = r_socket_rap_server_t ; extern "C" { pub fn r_socket_rap_server_new (is_ssl : bool , port : * const :: std :: os :: raw :: c_char) -> * mut RSocketRapServer ; } extern "C" { pub fn r_socket_rap_server_create (pathname : * const :: std :: os :: raw :: c_char) -> * mut RSocketRapServer ; } extern "C" { pub fn r_socket_rap_server_free (rap_s : * mut RSocketRapServer) ; } extern "C" { pub fn r_socket_rap_server_listen (rap_s : * mut RSocketRapServer , certfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_socket_rap_server_accept (rap_s : * mut RSocketRapServer) -> * mut RSocket ; } extern "C" { pub fn r_socket_rap_server_continue (rap_s : * mut RSocketRapServer) -> bool ; } extern "C" { pub fn r_socket_rap_client_open (s : * mut RSocket , file : * const :: std :: os :: raw :: c_char , rw : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_command (s : * mut RSocket , cmd : * const :: std :: os :: raw :: c_char , c : * mut RCoreBind) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_socket_rap_client_write (s : * mut RSocket , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_read (s : * mut RSocket , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_socket_rap_client_seek (s : * mut RSocket , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_run_profile_t { pub _args : [* mut :: std :: os :: raw :: c_char ; 512usize] , pub _argc : :: std :: os :: raw :: c_int , pub _daemon : bool , pub _system : * mut :: std :: os :: raw :: c_char , pub _program : * mut :: std :: os :: raw :: c_char , pub _runlib : * mut :: std :: os :: raw :: c_char , pub _runlib_fcn : * mut :: std :: os :: raw :: c_char , pub _stdio : * mut :: std :: os :: raw :: c_char , pub _stdin : * mut :: std :: os :: raw :: c_char , pub _stdout : * mut :: std :: os :: raw :: c_char , pub _stderr : * mut :: std :: os :: raw :: c_char , pub _chgdir : * mut :: std :: os :: raw :: c_char , pub _chroot : * mut :: std :: os :: raw :: c_char , pub _libpath : * mut :: std :: os :: raw :: c_char , pub _preload : * mut RList , pub _bits : :: std :: os :: raw :: c_int , pub _time : bool , pub _pid : :: std :: os :: raw :: c_int , pub _pidfile : * mut :: std :: os :: raw :: c_char , pub _r2preload : bool , pub _docore : bool , pub _dofork : bool , pub _aslr : :: std :: os :: raw :: c_int , pub _maxstack : :: std :: os :: raw :: c_int , pub _maxproc : :: std :: os :: raw :: c_int , pub _maxfd : :: std :: os :: raw :: c_int , pub _r2sleep : :: std :: os :: raw :: c_int , pub _execve : :: std :: os :: raw :: c_int , pub _setuid : * mut :: std :: os :: raw :: c_char , pub _seteuid : * mut :: std :: os :: raw :: c_char , pub _setgid : * mut :: std :: os :: raw :: c_char , pub _setegid : * mut :: std :: os :: raw :: c_char , pub _input : * mut :: std :: os :: raw :: c_char , pub _connect : * mut :: std :: os :: raw :: c_char , pub _listen : * mut :: std :: os :: raw :: c_char , pub _pty : :: std :: os :: raw :: c_int , pub _timeout : :: std :: os :: raw :: c_int , pub _timeout_sig : :: std :: os :: raw :: c_int , pub _nice : :: std :: os :: raw :: c_int , pub _stderrout : bool , pub _noprogram : bool , } # [test] fn bindgen_test_layout_r_run_profile_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_run_profile_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_run_profile_t > () , 4336usize , concat ! ("Size of: " , stringify ! (r_run_profile_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_run_profile_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_run_profile_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _args) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _argc) as usize - ptr as usize } , 4096usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_argc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _daemon) as usize - ptr as usize } , 4100usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_daemon))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _system) as usize - ptr as usize } , 4104usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _program) as usize - ptr as usize } , 4112usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_program))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _runlib) as usize - ptr as usize } , 4120usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_runlib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _runlib_fcn) as usize - ptr as usize } , 4128usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_runlib_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdio) as usize - ptr as usize } , 4136usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdio))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdin) as usize - ptr as usize } , 4144usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stdout) as usize - ptr as usize } , 4152usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stdout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stderr) as usize - ptr as usize } , 4160usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stderr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chgdir) as usize - ptr as usize } , 4168usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_chgdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _chroot) as usize - ptr as usize } , 4176usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_chroot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _libpath) as usize - ptr as usize } , 4184usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_libpath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _preload) as usize - ptr as usize } , 4192usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_preload))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _bits) as usize - ptr as usize } , 4200usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _time) as usize - ptr as usize } , 4204usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pid) as usize - ptr as usize } , 4208usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pidfile) as usize - ptr as usize } , 4216usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pidfile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _r2preload) as usize - ptr as usize } , 4224usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_r2preload))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _docore) as usize - ptr as usize } , 4225usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_docore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _dofork) as usize - ptr as usize } , 4226usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_dofork))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _aslr) as usize - ptr as usize } , 4228usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_aslr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxstack) as usize - ptr as usize } , 4232usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxproc) as usize - ptr as usize } , 4236usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxproc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _maxfd) as usize - ptr as usize } , 4240usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_maxfd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _r2sleep) as usize - ptr as usize } , 4244usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_r2sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _execve) as usize - ptr as usize } , 4248usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_execve))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setuid) as usize - ptr as usize } , 4256usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setuid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _seteuid) as usize - ptr as usize } , 4264usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_seteuid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setgid) as usize - ptr as usize } , 4272usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setgid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _setegid) as usize - ptr as usize } , 4280usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_setegid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _input) as usize - ptr as usize } , 4288usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_input))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _connect) as usize - ptr as usize } , 4296usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_connect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _listen) as usize - ptr as usize } , 4304usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_listen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _pty) as usize - ptr as usize } , 4312usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_pty))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _timeout) as usize - ptr as usize } , 4316usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_timeout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _timeout_sig) as usize - ptr as usize } , 4320usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_timeout_sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _nice) as usize - ptr as usize } , 4324usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_nice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _stderrout) as usize - ptr as usize } , 4328usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_stderrout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _noprogram) as usize - ptr as usize } , 4329usize , concat ! ("Offset of field: " , stringify ! (r_run_profile_t) , "::" , stringify ! (_noprogram))) ; } impl Default for r_run_profile_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRunProfile = r_run_profile_t ; extern "C" { pub fn r_run_new (str_ : * const :: std :: os :: raw :: c_char) -> * mut RRunProfile ; } extern "C" { pub fn r_run_parse (pf : * mut RRunProfile , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_free (r : * mut RRunProfile) ; } extern "C" { pub fn r_run_parseline (p : * mut RRunProfile , b : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_help () -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_run_config_env (p : * mut RRunProfile) -> bool ; } extern "C" { pub fn r_run_start (p : * mut RRunProfile) -> bool ; } extern "C" { pub fn r_run_reset (p : * mut RRunProfile) ; } extern "C" { pub fn r_run_fini (p : * mut RRunProfile) ; } extern "C" { pub fn r_run_parsefile (p : * mut RRunProfile , b : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_run_get_environ_profile (env : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct magic_set { _unused : [u8 ; 0] , } extern "C" { pub fn r_magic_new (flags : :: std :: os :: raw :: c_int) -> * mut magic_set ; } extern "C" { pub fn r_magic_free (arg1 : * mut magic_set) ; } extern "C" { pub fn r_magic_file (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_descriptor (arg1 : * mut magic_set , arg2 : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_buffer (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_void , arg3 : usize) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_error (arg1 : * mut magic_set) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_magic_setflags (arg1 : * mut magic_set , arg2 : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_magic_from_ebcdic (arg1 : * const u8 , arg2 : usize , arg3 : * mut u8) ; } extern "C" { pub fn r_magic_load (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_load_buffer (arg1 : * mut magic_set , arg2 : * const u8 , arg3 : usize) -> bool ; } extern "C" { pub fn r_magic_compile (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_check (arg1 : * mut magic_set , arg2 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_magic_errno (arg1 : * mut magic_set) -> :: std :: os :: raw :: c_int ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ascii_node_t { pub gnode : * mut RGraphNode , pub title : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , pub color : * mut :: std :: os :: raw :: c_char , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub layer : :: std :: os :: raw :: c_int , pub layer_height : :: std :: os :: raw :: c_int , pub layer_width : :: std :: os :: raw :: c_int , pub pos_in_layer : :: std :: os :: raw :: c_int , pub is_dummy : :: std :: os :: raw :: c_int , pub is_reversed : :: std :: os :: raw :: c_int , pub klass : :: std :: os :: raw :: c_int , pub difftype : :: std :: os :: raw :: c_int , pub is_mini : bool , } # [test] fn bindgen_test_layout_r_ascii_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_node_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_ascii_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gnode) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (gnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer_height) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer_height))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layer_width) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (layer_width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pos_in_layer) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (pos_in_layer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dummy) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_dummy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reversed) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_reversed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . klass) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (klass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . difftype) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (difftype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_mini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_ascii_node_t) , "::" , stringify ! (is_mini))) ; } impl Default for r_ascii_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RANode = r_ascii_node_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_graph_hits_t { pub old_word : * mut :: std :: os :: raw :: c_char , pub word_list : RVector , pub word_nth : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_core_graph_hits_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_graph_hits_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_graph_hits_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_core_graph_hits_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_graph_hits_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_graph_hits_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_word) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (old_word))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (word_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_nth) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_graph_hits_t) , "::" , stringify ! (word_nth))) ; } impl Default for r_core_graph_hits_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAGraphHits = r_core_graph_hits_t ; pub type RANodeCallback = :: std :: option :: Option < unsafe extern "C" fn (n : * mut RANode , user : * mut :: std :: os :: raw :: c_void) > ; pub type RAEdgeCallback = :: std :: option :: Option < unsafe extern "C" fn (from : * mut RANode , to : * mut RANode , user : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ascii_graph_t { pub can : * mut RConsCanvas , pub graph : * mut RGraph , pub curnode : * const RGraphNode , pub title : * mut :: std :: os :: raw :: c_char , pub db : * mut Sdb , pub nodes : * mut Sdb , pub layout : :: std :: os :: raw :: c_int , pub is_instep : :: std :: os :: raw :: c_int , pub is_tiny : bool , pub is_dis : bool , pub is_handmade : bool , pub edgemode : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub is_callgraph : bool , pub is_interactive : bool , pub zoom : :: std :: os :: raw :: c_int , pub movspeed : :: std :: os :: raw :: c_int , pub discroll : :: std :: os :: raw :: c_int , pub hints : bool , pub update_seek_on : * mut RANode , pub need_reload_nodes : bool , pub need_set_layout : bool , pub need_update_dim : :: std :: os :: raw :: c_int , pub force_update_seek : :: std :: os :: raw :: c_int , pub on_curnode_change : RANodeCallback , pub on_curnode_change_data : * mut :: std :: os :: raw :: c_void , pub dummy : bool , pub show_node_titles : bool , pub show_node_body : bool , pub show_node_bubble : bool , pub bb_maxwidth : :: std :: os :: raw :: c_int , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub back_edges : * mut RList , pub long_edges : * mut RList , pub layers : * mut layer_t , pub n_layers : :: std :: os :: raw :: c_uint , pub dists : * mut RList , pub edges : * mut RList , pub ghits : RAGraphHits , } # [test] fn bindgen_test_layout_r_ascii_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_graph_t > () , 264usize , concat ! ("Size of: " , stringify ! (r_ascii_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_graph_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . can) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (can))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curnode) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (curnode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . title) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodes) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layout) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_instep) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_instep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_tiny) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_tiny))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dis) as usize - ptr as usize } , 57usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_dis))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_handmade) as usize - ptr as usize } , 58usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_handmade))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edgemode) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (edgemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_callgraph) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_callgraph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_interactive) as usize - ptr as usize } , 69usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (is_interactive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . movspeed) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (movspeed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discroll) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (discroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hints) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update_seek_on) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (update_seek_on))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_reload_nodes) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_reload_nodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_set_layout) as usize - ptr as usize } , 97usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_set_layout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . need_update_dim) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (need_update_dim))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force_update_seek) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (force_update_seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_curnode_change) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (on_curnode_change))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_curnode_change_data) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (on_curnode_change_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dummy) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (dummy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_titles) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_titles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_body) as usize - ptr as usize } , 130usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_body))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_node_bubble) as usize - ptr as usize } , 131usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (show_node_bubble))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_maxwidth) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (bb_maxwidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . back_edges) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (back_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . long_edges) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (long_edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layers) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_layers) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (n_layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dists) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (dists))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edges) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ghits) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_t) , "::" , stringify ! (ghits))) ; } impl Default for r_ascii_graph_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAGraph = r_ascii_graph_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_ascii_graph_transition_callbacks_t { pub get_title : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char > , pub get_body : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char > , } # [test] fn bindgen_test_layout_r_ascii_graph_transition_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_ascii_graph_transition_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_ascii_graph_transition_callbacks_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_ascii_graph_transition_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_ascii_graph_transition_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_ascii_graph_transition_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_title) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_transition_callbacks_t) , "::" , stringify ! (get_title))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_ascii_graph_transition_callbacks_t) , "::" , stringify ! (get_body))) ; } pub type RAGraphTransitionCBs = r_ascii_graph_transition_callbacks_t ; extern "C" { pub fn r_agraph_new (can : * mut RConsCanvas) -> * mut RAGraph ; } extern "C" { pub fn r_agraph_free (g : * mut RAGraph) ; } extern "C" { pub fn r_agraph_reset (g : * mut RAGraph) ; } extern "C" { pub fn r_agraph_set_title (g : * mut RAGraph , title : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_agraph_get_first_node (g : * const RAGraph) -> * mut RANode ; } extern "C" { pub fn r_agraph_get_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char) -> * mut RANode ; } extern "C" { pub fn r_agraph_add_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char , body : * const :: std :: os :: raw :: c_char , color : * const :: std :: os :: raw :: c_char) -> * mut RANode ; } extern "C" { pub fn r_agraph_del_node (g : * const RAGraph , title : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_agraph_add_edge (g : * const RAGraph , a : * mut RANode , b : * mut RANode , highlight : bool) ; } extern "C" { pub fn r_agraph_add_edge_at (g : * const RAGraph , a : * mut RANode , b : * mut RANode , nth : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_agraph_del_edge (g : * const RAGraph , a : * mut RANode , b : * mut RANode) ; } extern "C" { pub fn r_agraph_print (g : * mut RAGraph , core : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_print_json (g : * mut RAGraph , pj : * mut PJ) ; } extern "C" { pub fn r_agraph_get_sdb (g : * mut RAGraph) -> * mut Sdb ; } extern "C" { pub fn r_agraph_foreach (g : * mut RAGraph , cb : RANodeCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_foreach_edge (g : * mut RAGraph , cb : RAEdgeCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_agraph_set_curnode (g : * mut RAGraph , node : * mut RANode) ; } extern "C" { pub fn r_agraph_new_from_graph (core : * mut :: std :: os :: raw :: c_void , graph : * const RGraph , cbs : * mut RAGraphTransitionCBs , user : * mut :: std :: os :: raw :: c_void) -> * mut RAGraph ; } pub const r_plugin_status_t_R_PLUGIN_STATUS_BROKEN : r_plugin_status_t = 0 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_INCOMPLETE : r_plugin_status_t = 1 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_BASIC : r_plugin_status_t = 2 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_OK : r_plugin_status_t = 3 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_GOOD : r_plugin_status_t = 4 ; pub const r_plugin_status_t_R_PLUGIN_STATUS_COMPLETE : r_plugin_status_t = 5 ; pub type r_plugin_status_t = :: std :: os :: raw :: c_uint ; pub use self :: r_plugin_status_t as RPluginStatus ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_plugin_meta_t { pub name : * mut :: std :: os :: raw :: c_char , pub desc : * mut :: std :: os :: raw :: c_char , pub author : * mut :: std :: os :: raw :: c_char , pub version : * mut :: std :: os :: raw :: c_char , pub license : * mut :: std :: os :: raw :: c_char , pub contact : * mut :: std :: os :: raw :: c_char , pub copyright : * mut :: std :: os :: raw :: c_char , pub status : RPluginStatus , } # [test] fn bindgen_test_layout_r_plugin_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_plugin_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_plugin_meta_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_plugin_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_plugin_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_plugin_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . author) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (author))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . license) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (license))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contact) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (contact))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . copyright) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (copyright))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_plugin_meta_t) , "::" , stringify ! (status))) ; } impl Default for r_plugin_meta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPluginMeta = r_plugin_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_plugin_t { pub type_ : :: std :: os :: raw :: c_int , pub file : * mut :: std :: os :: raw :: c_char , pub data : * mut :: std :: os :: raw :: c_void , pub handler : * mut r_lib_handler_t , pub dl_handler : * mut :: std :: os :: raw :: c_void , pub free : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_lib_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_plugin_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_lib_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dl_handler) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (dl_handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_lib_plugin_t) , "::" , stringify ! (name))) ; } impl Default for r_lib_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibPlugin = r_lib_plugin_t ; pub type RLibCallback = :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut RLibPlugin , user : * mut :: std :: os :: raw :: c_void , data : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_handler_t { pub type_ : :: std :: os :: raw :: c_int , pub desc : [:: std :: os :: raw :: c_char ; 128usize] , pub user : * mut :: std :: os :: raw :: c_void , pub constructor : RLibCallback , pub destructor : RLibCallback , } # [test] fn bindgen_test_layout_r_lib_handler_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_handler_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_handler_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_lib_handler_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_handler_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_handler_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constructor) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (constructor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destructor) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_lib_handler_t) , "::" , stringify ! (destructor))) ; } impl Default for r_lib_handler_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibHandler = r_lib_handler_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_struct_t { pub type_ : :: std :: os :: raw :: c_int , pub data : * mut :: std :: os :: raw :: c_void , pub version : * const :: std :: os :: raw :: c_char , pub free : :: std :: option :: Option < unsafe extern "C" fn (data : * mut :: std :: os :: raw :: c_void) > , pub pkgname : * const :: std :: os :: raw :: c_char , pub abiversion : u32 , } # [test] fn bindgen_test_layout_r_lib_struct_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_struct_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_struct_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_lib_struct_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_struct_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_struct_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (free))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pkgname) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (pkgname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abiversion) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lib_struct_t) , "::" , stringify ! (abiversion))) ; } impl Default for r_lib_struct_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLibStruct = r_lib_struct_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lib_t { pub symname : * mut :: std :: os :: raw :: c_char , pub symnamefunc : * mut :: std :: os :: raw :: c_char , pub plugins : * mut RList , pub handlers : * mut RList , pub handlers_bytype : [* mut RLibHandler ; 18usize] , pub ignore_version : bool , pub ignore_abiversion : bool , pub safe_loading : bool , pub plugins_ht : * mut [u64 ; 11usize] , pub abiversion : u32 , } # [test] fn bindgen_test_layout_r_lib_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lib_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lib_t > () , 200usize , concat ! ("Size of: " , stringify ! (r_lib_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lib_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lib_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (symname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symnamefunc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (symnamefunc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handlers) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (handlers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handlers_bytype) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (handlers_bytype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore_version) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (ignore_version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignore_abiversion) as usize - ptr as usize } , 177usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (ignore_abiversion))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . safe_loading) as usize - ptr as usize } , 178usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (safe_loading))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins_ht) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (plugins_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abiversion) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_lib_t) , "::" , stringify ! (abiversion))) ; } impl Default for r_lib_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLib = r_lib_t ; extern "C" { pub fn r_lib_dl_open (libname : * const :: std :: os :: raw :: c_char , safe_mode : bool) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_lib_dl_sym (handler : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_void ; } extern "C" { pub fn r_lib_dl_close (handler : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lib_new (symname : * const :: std :: os :: raw :: c_char , symnamefunc : * const :: std :: os :: raw :: c_char) -> * mut RLib ; } extern "C" { pub fn r_lib_free (lib : * mut RLib) ; } extern "C" { pub fn r_lib_run_handler (lib : * mut RLib , plugin : * mut RLibPlugin , symbol : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_get_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int) -> * mut RLibHandler ; } extern "C" { pub fn r_lib_open (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_opendir (lib : * mut RLib , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_open_ptr (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char , handler : * mut :: std :: os :: raw :: c_void , stru : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_validate_plugin (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char , stru : * mut RLibStruct) -> bool ; } extern "C" { pub fn r_lib_get_loaded_plugins (lib : * mut RLib) -> * mut RList ; } extern "C" { pub fn r_lib_path (libname : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_lib_list (lib : * mut RLib) ; } extern "C" { pub fn r_lib_add_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int , desc : * const :: std :: os :: raw :: c_char , ct : RLibCallback , dt : RLibCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lib_del_handler (lib : * mut RLib , type_ : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_lib_close (lib : * mut RLib , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lib_meta_pj (pj : * mut PJ , meta : * const RPluginMeta) ; } pub const __ptrace_request_PTRACE_TRACEME : __ptrace_request = 0 ; pub const __ptrace_request_PTRACE_PEEKTEXT : __ptrace_request = 1 ; pub const __ptrace_request_PTRACE_PEEKDATA : __ptrace_request = 2 ; pub const __ptrace_request_PTRACE_PEEKUSER : __ptrace_request = 3 ; pub const __ptrace_request_PTRACE_POKETEXT : __ptrace_request = 4 ; pub const __ptrace_request_PTRACE_POKEDATA : __ptrace_request = 5 ; pub const __ptrace_request_PTRACE_POKEUSER : __ptrace_request = 6 ; pub const __ptrace_request_PTRACE_CONT : __ptrace_request = 7 ; pub const __ptrace_request_PTRACE_KILL : __ptrace_request = 8 ; pub const __ptrace_request_PTRACE_SINGLESTEP : __ptrace_request = 9 ; pub const __ptrace_request_PTRACE_GETREGS : __ptrace_request = 12 ; pub const __ptrace_request_PTRACE_SETREGS : __ptrace_request = 13 ; pub const __ptrace_request_PTRACE_GETFPREGS : __ptrace_request = 14 ; pub const __ptrace_request_PTRACE_SETFPREGS : __ptrace_request = 15 ; pub const __ptrace_request_PTRACE_ATTACH : __ptrace_request = 16 ; pub const __ptrace_request_PTRACE_DETACH : __ptrace_request = 17 ; pub const __ptrace_request_PTRACE_GETFPXREGS : __ptrace_request = 18 ; pub const __ptrace_request_PTRACE_SETFPXREGS : __ptrace_request = 19 ; pub const __ptrace_request_PTRACE_SYSCALL : __ptrace_request = 24 ; pub const __ptrace_request_PTRACE_GET_THREAD_AREA : __ptrace_request = 25 ; pub const __ptrace_request_PTRACE_SET_THREAD_AREA : __ptrace_request = 26 ; pub const __ptrace_request_PTRACE_ARCH_PRCTL : __ptrace_request = 30 ; pub const __ptrace_request_PTRACE_SYSEMU : __ptrace_request = 31 ; pub const __ptrace_request_PTRACE_SYSEMU_SINGLESTEP : __ptrace_request = 32 ; pub const __ptrace_request_PTRACE_SINGLEBLOCK : __ptrace_request = 33 ; pub const __ptrace_request_PTRACE_SETOPTIONS : __ptrace_request = 16896 ; pub const __ptrace_request_PTRACE_GETEVENTMSG : __ptrace_request = 16897 ; pub const __ptrace_request_PTRACE_GETSIGINFO : __ptrace_request = 16898 ; pub const __ptrace_request_PTRACE_SETSIGINFO : __ptrace_request = 16899 ; pub const __ptrace_request_PTRACE_GETREGSET : __ptrace_request = 16900 ; pub const __ptrace_request_PTRACE_SETREGSET : __ptrace_request = 16901 ; pub const __ptrace_request_PTRACE_SEIZE : __ptrace_request = 16902 ; pub const __ptrace_request_PTRACE_INTERRUPT : __ptrace_request = 16903 ; pub const __ptrace_request_PTRACE_LISTEN : __ptrace_request = 16904 ; pub const __ptrace_request_PTRACE_PEEKSIGINFO : __ptrace_request = 16905 ; pub const __ptrace_request_PTRACE_GETSIGMASK : __ptrace_request = 16906 ; pub const __ptrace_request_PTRACE_SETSIGMASK : __ptrace_request = 16907 ; pub const __ptrace_request_PTRACE_SECCOMP_GET_FILTER : __ptrace_request = 16908 ; pub const __ptrace_request_PTRACE_SECCOMP_GET_METADATA : __ptrace_request = 16909 ; pub const __ptrace_request_PTRACE_GET_SYSCALL_INFO : __ptrace_request = 16910 ; pub const __ptrace_request_PTRACE_GET_RSEQ_CONFIGURATION : __ptrace_request = 16911 ; pub const __ptrace_request_PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG : __ptrace_request = 16912 ; pub const __ptrace_request_PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG : __ptrace_request = 16913 ; pub type __ptrace_request = :: std :: os :: raw :: c_uint ; pub use self :: __ptrace_request as r_ptrace_request_t ; pub type r_ptrace_data_t = * mut :: std :: os :: raw :: c_void ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_undos_t { pub off : u64 , pub cursor : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_io_undos_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undos_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undos_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_undos_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undos_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undos_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undos_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cursor) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undos_t) , "::" , stringify ! (cursor))) ; } pub type RIOUndos = r_io_undos_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_undo_t { pub s_enable : bool , pub w_enable : bool , pub w_list : * mut RList , pub w_init : :: std :: os :: raw :: c_int , pub idx : :: std :: os :: raw :: c_int , pub undos : :: std :: os :: raw :: c_int , pub redos : :: std :: os :: raw :: c_int , pub seek : [RIOUndos ; 64usize] , } # [test] fn bindgen_test_layout_r_io_undo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undo_t > () , 1056usize , concat ! ("Size of: " , stringify ! (r_io_undo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s_enable) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (s_enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_enable) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_enable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_list) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w_init) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (w_init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undos) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (undos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . redos) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (redos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_t) , "::" , stringify ! (seek))) ; } impl Default for r_io_undo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOUndo = r_io_undo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_undo_w_t { pub set : bool , pub off : u64 , pub o : * mut u8 , pub n : * mut u8 , pub len : usize , } # [test] fn bindgen_test_layout_r_io_undo_w_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_undo_w_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_undo_w_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_io_undo_w_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_undo_w_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_undo_w_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . o) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (o))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_undo_w_t) , "::" , stringify ! (len))) ; } impl Default for r_io_undo_w_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOUndoWrite = r_io_undo_w_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_cache_layer_t { pub vec : * mut RPVector , pub tree : * mut RRBTree , } # [test] fn bindgen_test_layout_r_io_cache_layer_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_cache_layer_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_cache_layer_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_cache_layer_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_cache_layer_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_cache_layer_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vec) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_layer_t) , "::" , stringify ! (vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_layer_t) , "::" , stringify ! (tree))) ; } impl Default for r_io_cache_layer_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_cache_t { pub layers : * mut RList , pub mode : u32 , pub enabled : bool , } # [test] fn bindgen_test_layout_r_io_cache_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_cache_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_cache_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_cache_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_cache_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_cache_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . layers) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (layers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_io_cache_t) , "::" , stringify ! (enabled))) ; } impl Default for r_io_cache_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOCache = r_io_cache_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_t { pub desc : * mut r_io_desc_t , pub off : u64 , pub bank : u32 , pub bits : :: std :: os :: raw :: c_int , pub va : :: std :: os :: raw :: c_int , pub ff : bool , pub Oxff : u8 , pub addrbytes : usize , pub autofd : bool , pub overlay : bool , pub cachemode : bool , pub p_cache : u32 , pub mts : u64 , pub files : RIDStorage , pub maps : RIDStorage , pub banks : RIDStorage , pub cache : RIOCache , pub write_mask : * mut u8 , pub write_mask_len : :: std :: os :: raw :: c_int , pub mask : u64 , pub undo : RIOUndo , pub plugins : * mut SdbList , pub nodup : bool , pub runprofile : * mut :: std :: os :: raw :: c_char , pub envprofile : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub event : * mut REvent , pub cb_printf : PrintfCallback , pub coreb : RCoreBind , pub want_ptrace_wrap : bool , pub ptrace_wrap : * mut ptrace_wrap_instance_t , } # [test] fn bindgen_test_layout_r_io_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_t > () , 1464usize , concat ! ("Size of: " , stringify ! (r_io_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (bank))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . va) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (va))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ff) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (ff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . Oxff) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (Oxff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrbytes) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (addrbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autofd) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (autofd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay) as usize - ptr as usize } , 41usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cachemode) as usize - ptr as usize } , 42usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cachemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p_cache) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (p_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mts) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (mts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . files) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (files))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . banks) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (banks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_mask) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (write_mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_mask_len) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (write_mask_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undo) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (undo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 1224usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nodup) as usize - ptr as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (nodup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . runprofile) as usize - ptr as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (runprofile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . envprofile) as usize - ptr as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (envprofile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . event) as usize - ptr as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (event))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . want_ptrace_wrap) as usize - ptr as usize } , 1448usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (want_ptrace_wrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace_wrap) as usize - ptr as usize } , 1456usize , concat ! ("Offset of field: " , stringify ! (r_io_t) , "::" , stringify ! (ptrace_wrap))) ; } impl Default for r_io_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIO = r_io_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_desc_t { pub fd : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub uri : * mut :: std :: os :: raw :: c_char , pub name : * mut :: std :: os :: raw :: c_char , pub referer : * mut :: std :: os :: raw :: c_char , pub cache : * mut [u64 ; 11usize] , pub data : * mut :: std :: os :: raw :: c_void , pub plugin : * mut r_io_plugin_t , pub io : * mut RIO , } # [test] fn bindgen_test_layout_r_io_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_desc_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_io_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uri) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (uri))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . referer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (referer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cache) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_desc_t) , "::" , stringify ! (io))) ; } impl Default for r_io_desc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIODesc = r_io_desc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_plugin_t { pub meta : RPluginMeta , pub data : * mut :: std :: os :: raw :: c_void , pub uris : * const :: std :: os :: raw :: c_char , pub listener : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub isdbg : bool , pub system : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , arg1 : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > , pub open : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc > , pub open_many : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList > , pub read : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub seek : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 > , pub write : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub is_blockdevice : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub is_chardevice : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> bool > , pub getpid : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub gettid : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int > , pub getbase : :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc , base : * mut u64) -> bool > , pub resize : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , size : u64) -> bool > , pub extend : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : * mut RIODesc , size : u64) -> bool > , pub accept : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , desc : * mut RIODesc , fd : :: std :: os :: raw :: c_int) -> bool > , pub create : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , file : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub check : :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , arg1 : * const :: std :: os :: raw :: c_char , many : bool) -> bool > , } # [test] fn bindgen_test_layout_r_io_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_plugin_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_io_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uris) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (uris))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . listener) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (listener))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isdbg) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (isdbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open_many) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (open_many))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_blockdevice) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (is_blockdevice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_chardevice) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (is_chardevice))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getpid) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (getpid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gettid) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (gettid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . getbase) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (getbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resize) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extend) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (extend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accept) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (accept))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . create) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_io_plugin_t) , "::" , stringify ! (check))) ; } impl Default for r_io_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOPlugin = r_io_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_map_t { pub fd : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub id : u32 , pub ts : u64 , pub itv : RInterval , pub delta : u64 , pub overlay : * mut RRBTree , pub name : * mut :: std :: os :: raw :: c_char , pub tie_flags : u32 , pub meta : u32 , } # [test] fn bindgen_test_layout_r_io_map_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_map_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_map_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_io_map_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_map_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_map_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (ts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (itv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tie_flags) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (tie_flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_io_map_t) , "::" , stringify ! (meta))) ; } impl Default for r_io_map_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOMap = r_io_map_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_map_ref_t { pub id : u32 , pub ts : u64 , } # [test] fn bindgen_test_layout_r_io_map_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_map_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_map_ref_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_io_map_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_map_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_map_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_map_ref_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_map_ref_t) , "::" , stringify ! (ts))) ; } pub type RIOMapRef = r_io_map_ref_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_submap_t { pub mapref : RIOMapRef , pub itv : RInterval , } # [test] fn bindgen_test_layout_r_io_submap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_submap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_submap_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_io_submap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_submap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_submap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mapref) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_submap_t) , "::" , stringify ! (mapref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_submap_t) , "::" , stringify ! (itv))) ; } pub type RIOSubMap = r_io_submap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_bank_t { pub name : * mut :: std :: os :: raw :: c_char , pub submaps : * mut RRBTree , pub maprefs : * mut RList , pub todo : * mut RQueue , pub last_used : * mut RRBNode , pub id : u32 , pub drain_me : bool , } # [test] fn bindgen_test_layout_r_io_bank_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_bank_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_bank_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_io_bank_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_bank_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_bank_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . submaps) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (submaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maprefs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (maprefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . todo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_used) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (last_used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . drain_me) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_io_bank_t) , "::" , stringify ! (drain_me))) ; } impl Default for r_io_bank_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOBank = r_io_bank_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_io_region_t { pub itv : RInterval , pub perm : u32 , } # [test] fn bindgen_test_layout_r_io_region_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_region_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_region_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_io_region_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_region_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_region_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . itv) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_region_t) , "::" , stringify ! (itv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_region_t) , "::" , stringify ! (perm))) ; } pub type RIORegion = r_io_region_t ; pub type RIODescUse = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIODescGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RIODesc > ; pub type RIODescSize = :: std :: option :: Option < unsafe extern "C" fn (desc : * mut RIODesc) -> u64 > ; pub type RIOOpen = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc > ; pub type RIOOpenAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , at : u64) -> * mut RIODesc > ; pub type RIOClose = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOReadAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOOverlayWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOSystem = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RIOFdOpen = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdClose = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOFdSeek = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , whence : :: std :: os :: raw :: c_int) -> u64 > ; pub type RIOFdSize = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> u64 > ; pub type RIOFdResize = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , newsize : u64) -> bool > ; pub type RIOP2V = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , p : u64 , v : * mut u64) -> bool > ; pub type RIOV2P = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , va : u64) -> u64 > ; pub type RIOFdRead = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdWrite = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdReadAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdWriteAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RIOFdIsDbg = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOFdGetName = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char > ; pub type RIOFdGetMap = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RList > ; pub type RIOFdRemap = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64) -> bool > ; pub type RIOIsValidOff = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64 , hasperm : :: std :: os :: raw :: c_int) -> bool > ; pub type RIOBankGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , bankid : u32) -> * mut RIOBank > ; pub type RIOBankUse = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , bankid : u32) -> bool > ; pub type RIOMapGet = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , id : u32) -> * mut RIOMap > ; pub type RIOMapGetAt = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64) -> * mut RIOMap > ; pub type RIOMapGetPaddr = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , paddr : u64) -> * mut RIOMap > ; pub type RIOAddrIsMapped = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , addr : u64) -> bool > ; pub type RIOMapAdd = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap > ; pub type RIOPtraceFn = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , request : r_ptrace_request_t , pid : pid_t , addr : * mut :: std :: os :: raw :: c_void , data : r_ptrace_data_t) -> :: std :: os :: raw :: c_long > ; pub type RIOPtraceFuncFn = :: std :: option :: Option < unsafe extern "C" fn (io : * mut RIO , func : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_io_bind_t { pub init : :: std :: os :: raw :: c_int , pub io : * mut RIO , pub desc_use : RIODescUse , pub desc_get : RIODescGet , pub desc_size : RIODescSize , pub open : RIOOpen , pub open_at : RIOOpenAt , pub close : RIOClose , pub read_at : RIOReadAt , pub write_at : RIOWriteAt , pub overlay_write_at : RIOOverlayWriteAt , pub system : RIOSystem , pub fd_open : RIOFdOpen , pub fd_close : RIOFdClose , pub fd_seek : RIOFdSeek , pub fd_size : RIOFdSize , pub fd_resize : RIOFdResize , pub fd_read : RIOFdRead , pub fd_write : RIOFdWrite , pub fd_read_at : RIOFdReadAt , pub fd_write_at : RIOFdWriteAt , pub fd_is_dbg : RIOFdIsDbg , pub fd_get_name : RIOFdGetName , pub fd_get_map : RIOFdGetMap , pub fd_remap : RIOFdRemap , pub is_valid_offset : RIOIsValidOff , pub addr_is_mapped : RIOAddrIsMapped , pub bank_get : RIOBankGet , pub bank_use : RIOBankUse , pub map_get : RIOMapGet , pub map_get_at : RIOMapGetAt , pub map_get_paddr : RIOMapGetPaddr , pub map_add : RIOMapAdd , pub v2p : RIOV2P , pub p2v : RIOP2V , pub ptrace : RIOPtraceFn , pub ptrace_func : RIOPtraceFuncFn , } # [test] fn bindgen_test_layout_r_io_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_io_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_io_bind_t > () , 296usize , concat ! ("Size of: " , stringify ! (r_io_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_io_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_io_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_use) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_use))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_get) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (desc_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open_at) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (open_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_at) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write_at) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlay_write_at) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (overlay_write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . system) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (system))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_open) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_close) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_seek) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_size) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_resize) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_read) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_write) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_read_at) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_write_at) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_write_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_is_dbg) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_is_dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_get_name) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_get_map) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_get_map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd_remap) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (fd_remap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_valid_offset) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (is_valid_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_is_mapped) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (addr_is_mapped))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank_get) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (bank_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bank_use) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (bank_use))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get_at) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get_paddr) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_get_paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_add) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (map_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . v2p) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (v2p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p2v) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (p2v))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (ptrace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrace_func) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_io_bind_t) , "::" , stringify ! (ptrace_func))) ; } impl Default for r_io_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RIOBind = r_io_bind_t ; extern "C" { pub fn r_io_map_init (io : * mut RIO) ; } extern "C" { pub fn r_io_map_remap (io : * mut RIO , id : u32 , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_remap_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_exists (io : * mut RIO , map : * mut RIOMap) -> bool ; } extern "C" { pub fn r_io_map_exists_for_id (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_get (io : * mut RIO , id : u32) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_add (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_add_bottom (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , delta : u64 , addr : u64 , size : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_get_at (io : * mut RIO , vaddr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_get_by_ref (io : * mut RIO , ref_ : * mut RIOMapRef) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_is_mapped (io : * mut RIO , addr : u64) -> bool ; } extern "C" { pub fn r_io_map_get_paddr (io : * mut RIO , paddr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_map_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_map_del (io : * mut RIO , id : u32) ; } extern "C" { pub fn r_io_map_del_for_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_depriorize (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_priorize (io : * mut RIO , id : u32) -> bool ; } extern "C" { pub fn r_io_map_priorize_for_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_cleanup (io : * mut RIO) ; } extern "C" { pub fn r_io_map_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_map_is_in_range (map : * mut RIOMap , from : u64 , to : u64) -> bool ; } extern "C" { pub fn r_io_map_set_name (map : * mut RIOMap , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_io_map_del_name (map : * mut RIOMap) ; } extern "C" { pub fn r_io_map_get_by_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_map_resize (io : * mut RIO , id : u32 , newsize : u64) -> bool ; } extern "C" { pub fn r_io_map_read_from_overlay (map : * mut RIOMap , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_map_write_to_overlay (map : * mut RIOMap , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_map_drain_overlay (map : * mut RIOMap) ; } pub type RIOMapOverlayForeach = :: std :: option :: Option < unsafe extern "C" fn (itv : RInterval , data : * const u8 , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_io_map_overlay_foreach (map : * mut RIOMap , cb : RIOMapOverlayForeach , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_io_map_locate (io : * mut RIO , addr : * mut u64 , size : u64 , load_align : u64) -> bool ; } extern "C" { pub fn r_io_p2v (io : * mut RIO , p : u64 , v : * mut u64) -> bool ; } extern "C" { pub fn r_io_v2p (io : * mut RIO , va : u64) -> u64 ; } extern "C" { pub fn r_io_submap_new (io : * mut RIO , mapref : * mut RIOMapRef) -> * mut RIOSubMap ; } extern "C" { pub fn r_io_submap_set_from (sm : * mut RIOSubMap , from : u64) -> bool ; } extern "C" { pub fn r_io_submap_set_to (sm : * mut RIOSubMap , to : u64) -> bool ; } extern "C" { pub fn r_io_bank_new (name : * const :: std :: os :: raw :: c_char) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_del (io : * mut RIO , bankid : u32) ; } extern "C" { pub fn r_io_bank_first (io : * mut RIO) -> u32 ; } extern "C" { pub fn r_io_bank_add (io : * mut RIO , bank : * mut RIOBank) -> bool ; } extern "C" { pub fn r_io_bank_clear (bank : * mut RIOBank) ; } extern "C" { pub fn r_io_bank_free (bank : * mut RIOBank) ; } extern "C" { pub fn r_io_bank_init (io : * mut RIO) ; } extern "C" { pub fn r_io_bank_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_bank_get (io : * mut RIO , bankid : u32) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_get_byname (io : * mut RIO , bankname : * const :: std :: os :: raw :: c_char) -> * mut RIOBank ; } extern "C" { pub fn r_io_bank_use (io : * mut RIO , bankid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_add_top (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_add_bottom (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_priorize (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_map_depriorize (io : * mut RIO , bankid : u32 , mapid : u32) -> bool ; } extern "C" { pub fn r_io_bank_update_map_boundaries (io : * mut RIO , bankid : u32 , mapid : u32 , ofrom : u64 , oto : u64) -> bool ; } extern "C" { pub fn r_io_bank_locate (io : * mut RIO , bankid : u32 , addr : * mut u64 , size : u64 , load_align : u64) -> bool ; } extern "C" { pub fn r_io_bank_del_map (io : * mut RIO , bankid : u32 , mapid : u32) ; } extern "C" { pub fn r_io_bank_get_map_at (io : * mut RIO , bankid : u32 , addr : u64) -> * mut RIOMap ; } extern "C" { pub fn r_io_bank_read_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bank_write_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bank_write_to_overlay_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } pub type RIOOverlayForeach = :: std :: option :: Option < unsafe extern "C" fn (itv : RInterval , m_data : * const u8 , o_data : * const u8 , user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_io_bank_overlay_foreach (io : * mut RIO , bankid : u32 , cb : RIOOverlayForeach , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_io_bank_read_from_submap_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_bank_write_to_submap_at (io : * mut RIO , bankid : u32 , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_bank_drain (io : * mut RIO , bankid : u32) ; } extern "C" { pub fn r_io_bank_get_region_at (io : * mut RIO , bankid : u32 , region : * mut RIORegion , addr : u64) -> bool ; } extern "C" { pub fn r_io_new () -> * mut RIO ; } extern "C" { pub fn r_io_init (io : * mut RIO) ; } extern "C" { pub fn r_io_open_nomap (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_open_at (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , at : u64) -> * mut RIODesc ; } extern "C" { pub fn r_io_open_many (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_open_buffer (io : * mut RIO , b : * mut RBuffer , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_close (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_reopen (io : * mut RIO , fd : :: std :: os :: raw :: c_int , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_close_all (io : * mut RIO) ; } extern "C" { pub fn r_io_pread_at (io : * mut RIO , paddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_pwrite_at (io : * mut RIO , paddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_vread_at (io : * mut RIO , vaddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_vwrite_at (io : * mut RIO , vaddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_vwrite_to_overlay_at (io : * mut RIO , caddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_read_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_nread_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_write_at (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_read (io : * mut RIO , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_write (io : * mut RIO , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_size (io : * mut RIO) -> u64 ; } extern "C" { pub fn r_io_is_listener (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_system (io : * mut RIO , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_resize (io : * mut RIO , newsize : u64) -> bool ; } extern "C" { pub fn r_io_extend_at (io : * mut RIO , addr : u64 , size : u64) -> bool ; } extern "C" { pub fn r_io_set_write_mask (io : * mut RIO , mask : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_bind (io : * mut RIO , bnd : * mut RIOBind) ; } extern "C" { pub fn r_io_shift (io : * mut RIO , start : u64 , end : u64 , move_ : i64) -> bool ; } extern "C" { pub fn r_io_seek (io : * mut RIO , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_drain_overlay (io : * mut RIO) ; } extern "C" { pub fn r_io_get_region_at (io : * mut RIO , region : * mut RIORegion , addr : u64) -> bool ; } extern "C" { pub fn r_io_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_free (io : * mut RIO) ; } extern "C" { pub fn r_io_plugin_init (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_plugin_add (io : * mut RIO , plugin : * mut RIOPlugin) -> bool ; } extern "C" { pub fn r_io_plugin_remove (io : * mut RIO , plugin : * mut RIOPlugin) -> bool ; } extern "C" { pub fn r_io_plugin_read (desc : * mut RIODesc , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_write (desc : * mut RIODesc , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_read_at (desc : * mut RIODesc , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_write_at (desc : * mut RIODesc , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_plugin_resolve (io : * mut RIO , filename : * const :: std :: os :: raw :: c_char , many : bool) -> * mut RIOPlugin ; } extern "C" { pub fn r_io_plugin_get_default (io : * mut RIO , filename : * const :: std :: os :: raw :: c_char , many : bool) -> * mut RIOPlugin ; } extern "C" { pub fn r_io_undo_init (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_undo_enable (io : * mut RIO , seek : :: std :: os :: raw :: c_int , write : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_sundo (io : * mut RIO , offset : u64) -> * mut RIOUndos ; } extern "C" { pub fn r_io_sundo_redo (io : * mut RIO) -> * mut RIOUndos ; } extern "C" { pub fn r_io_sundo_push (io : * mut RIO , off : u64 , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_sundo_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_sundo_list (io : * mut RIO , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_io_wundo_new (io : * mut RIO , off : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_apply_all (io : * mut RIO , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_apply (io : * mut RIO , u : * mut r_io_undo_w_t , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_clear (io : * mut RIO) ; } extern "C" { pub fn r_io_wundo_size (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_list (io : * mut RIO) ; } extern "C" { pub fn r_io_wundo_set_t (io : * mut RIO , u : * mut RIOUndoWrite , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_wundo_set_all (io : * mut RIO , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_io_wundo_set (io : * mut RIO , n : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_new (io : * mut RIO , plugin : * mut RIOPlugin , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , data : * mut :: std :: os :: raw :: c_void) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_open_plugin (io : * mut RIO , plugin : * mut RIOPlugin , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_close (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_read (desc : * mut RIODesc , buf : * mut u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_write (desc : * mut RIODesc , buf : * const u8 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_free (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_add (io : * mut RIO , desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_del (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_desc_get (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_byuri (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_next (io : * mut RIO , desc : * mut RIODesc) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_prev (io : * mut RIO , desc : * mut RIODesc) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_highest (io : * mut RIO) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_get_lowest (io : * mut RIO) -> * mut RIODesc ; } extern "C" { pub fn r_io_desc_seek (desc : * mut RIODesc , offset : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_desc_size (desc : * mut RIODesc) -> u64 ; } extern "C" { pub fn r_io_desc_resize (desc : * mut RIODesc , newsize : u64) -> bool ; } extern "C" { pub fn r_io_desc_system (desc : * mut RIODesc , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_desc_is_blockdevice (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_is_chardevice (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_exchange (io : * mut RIO , fd : :: std :: os :: raw :: c_int , fdx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_desc_is_dbg (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_get_pid (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_get_tid (desc : * mut RIODesc) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_get_base (desc : * mut RIODesc , base : * mut u64) -> bool ; } extern "C" { pub fn r_io_desc_read_at (desc : * mut RIODesc , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_write_at (desc : * mut RIODesc , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_init (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_desc_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_init (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_fini (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_list (io : * mut RIO , rad : :: std :: os :: raw :: c_int , many : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_cache_empty (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_reset (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_at (io : * mut RIO , addr : u64) -> bool ; } extern "C" { pub fn r_io_cache_writable (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_write_at (io : * mut RIO , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_cache_read_at (io : * mut RIO , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_cache_invalidate (io : * mut RIO , from : u64 , to : u64 , many : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_cache_commit (io : * mut RIO , from : u64 , to : u64 , many : bool) ; } extern "C" { pub fn r_io_cache_push (io : * mut RIO) ; } extern "C" { pub fn r_io_cache_pop (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_undo (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_cache_redo (io : * mut RIO) -> bool ; } extern "C" { pub fn r_io_desc_cache_init (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_cache_write (desc : * mut RIODesc , paddr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_cache_read (desc : * mut RIODesc , paddr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_desc_cache_commit (desc : * mut RIODesc) -> bool ; } extern "C" { pub fn r_io_desc_cache_cleanup (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_cache_fini (desc : * mut RIODesc) ; } extern "C" { pub fn r_io_desc_cache_fini_all (io : * mut RIO) ; } extern "C" { pub fn r_io_desc_cache_list (desc : * mut RIODesc) -> * mut RList ; } extern "C" { pub fn r_io_desc_extend (desc : * mut RIODesc , size : u64) -> bool ; } extern "C" { pub fn r_io_fd_open (io : * mut RIO , uri : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_close (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_read (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_write (io : * mut RIO , fd : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_seek (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , whence : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_fd_size (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_io_fd_resize (io : * mut RIO , fd : :: std :: os :: raw :: c_int , newsize : u64) -> bool ; } extern "C" { pub fn r_io_fd_system (io : * mut RIO , fd : :: std :: os :: raw :: c_int , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_fd_is_blockdevice (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_is_chardevice (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_read_at (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_write_at (io : * mut RIO , fd : :: std :: os :: raw :: c_int , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_is_dbg (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_get_pid (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_tid (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_base (io : * mut RIO , fd : :: std :: os :: raw :: c_int , base : * mut u64) -> bool ; } extern "C" { pub fn r_io_fd_get_name (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_fd_get_current (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_use_fd (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_fd_get_next (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_prev (io : * mut RIO , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_highest (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_fd_get_lowest (io : * mut RIO) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_io_map_setattr_fromstring (map : * mut RIOMap , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_io_map_setattr (map : * mut RIOMap , type_ : u32 , flags : u32) -> bool ; } extern "C" { pub fn r_io_map_getattr (map : * mut RIOMap) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_io_is_valid_offset (io : * mut RIO , offset : u64 , hasperm : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_io_addr_is_mapped (io : * mut RIO , vaddr : u64) -> bool ; } extern "C" { pub fn r_io_read_i (io : * mut RIO , addr : u64 , val : * mut u64 , size : :: std :: os :: raw :: c_int , endian : bool) -> bool ; } extern "C" { pub fn r_io_write_i (io : * mut RIO , addr : u64 , val : * mut u64 , size : :: std :: os :: raw :: c_int , endian : bool) -> bool ; } extern "C" { pub fn r_io_ptrace (io : * mut RIO , request : r_ptrace_request_t , pid : pid_t , addr : * mut :: std :: os :: raw :: c_void , data : r_ptrace_data_t) -> :: std :: os :: raw :: c_long ; } extern "C" { pub fn r_io_ptrace_fork (io : * mut RIO , child_callback : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , child_callback_user : * mut :: std :: os :: raw :: c_void) -> pid_t ; } extern "C" { pub fn r_io_ptrace_func (io : * mut RIO , func : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void > , user : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_void ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_t { pub iob : RIOBind , pub cob : RCoreBind , pub csb : RConsBind , pub plugins : * mut RList , pub roots : * mut RList , pub view : :: std :: os :: raw :: c_int , pub ptr : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_fs_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_t > () , 560usize , concat ! ("Size of: " , stringify ! (r_fs_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cob) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (cob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . csb) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (csb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . roots) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (roots))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . view) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (view))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_fs_t) , "::" , stringify ! (ptr))) ; } impl Default for r_fs_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFS = r_fs_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_file_t { pub name : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub off : u64 , pub size : u32 , pub data : * mut u8 , pub ctx : * mut :: std :: os :: raw :: c_void , pub type_ : :: std :: os :: raw :: c_char , pub uid : u32 , pub gid : u32 , pub perm : u32 , pub time : u64 , pub p : * mut r_fs_plugin_t , pub root : * mut r_fs_root_t , pub ptr : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_fs_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_file_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_fs_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_file_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctx) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (ctx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . time) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_fs_file_t) , "::" , stringify ! (ptr))) ; } impl Default for r_fs_file_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSFile = r_fs_file_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_root_t { pub path : * mut :: std :: os :: raw :: c_char , pub delta : u64 , pub p : * mut r_fs_plugin_t , pub ptr : * mut :: std :: os :: raw :: c_void , pub iob : RIOBind , pub cob : RCoreBind , } # [test] fn bindgen_test_layout_r_fs_root_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_root_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_root_t > () , 496usize , concat ! ("Size of: " , stringify ! (r_fs_root_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_root_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_root_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cob) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_fs_root_t) , "::" , stringify ! (cob))) ; } impl Default for r_fs_root_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSRoot = r_fs_root_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_plugin_t { pub meta : RPluginMeta , pub slurp : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile > , pub open : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char , create : bool) -> * mut RFSFile > , pub unlink : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> bool > , pub write : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub read : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFSFile) > , pub dir : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char , view : :: std :: os :: raw :: c_int) -> * mut RList > , pub mkdir : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> bool > , pub init : :: std :: option :: Option < unsafe extern "C" fn () -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn () > , pub mount : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot) -> bool > , pub umount : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot) > , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (fs : * mut RFS , cmd : * const :: std :: os :: raw :: c_char) -> bool > , pub details : :: std :: option :: Option < unsafe extern "C" fn (root : * mut RFSRoot , sb : * mut RStrBuf) > , } # [test] fn bindgen_test_layout_r_fs_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_plugin_t > () , 176usize , concat ! ("Size of: " , stringify ! (r_fs_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurp) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (slurp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unlink) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (unlink))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mkdir) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (mkdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mount) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (mount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . umount) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (umount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . details) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_fs_plugin_t) , "::" , stringify ! (details))) ; } impl Default for r_fs_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSPlugin = r_fs_plugin_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_fs_partition_t { pub number : :: std :: os :: raw :: c_int , pub start : u64 , pub length : u64 , pub index : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_fs_partition_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_partition_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_partition_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_fs_partition_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_partition_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_partition_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . number) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (number))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_fs_partition_t) , "::" , stringify ! (type_))) ; } pub type RFSPartition = r_fs_partition_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_shell_t { pub cons : * mut RCons , pub cwd : * mut :: std :: os :: raw :: c_char , pub set_prompt : :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine , prompt : * const :: std :: os :: raw :: c_char) > , pub readline : :: std :: option :: Option < unsafe extern "C" fn (cons : * mut RCons) -> * const :: std :: os :: raw :: c_char > , pub hist_add : :: std :: option :: Option < unsafe extern "C" fn (line : * mut RLine , text : * const :: std :: os :: raw :: c_char) -> bool > , } # [test] fn bindgen_test_layout_r_fs_shell_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_shell_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_shell_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_fs_shell_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_shell_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_shell_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cwd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_prompt) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (set_prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . readline) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (readline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hist_add) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_shell_t) , "::" , stringify ! (hist_add))) ; } impl Default for r_fs_shell_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSShell = r_fs_shell_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_fs_type_t { pub name : * const :: std :: os :: raw :: c_char , pub bufoff : :: std :: os :: raw :: c_int , pub buf : * const :: std :: os :: raw :: c_char , pub buflen : :: std :: os :: raw :: c_int , pub byteoff : :: std :: os :: raw :: c_int , pub byte : u8 , pub bytelen : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_fs_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_fs_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_fs_type_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_fs_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_fs_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_fs_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bufoff) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (bufoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buflen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (buflen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byteoff) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (byteoff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . byte) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (byte))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytelen) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_fs_type_t) , "::" , stringify ! (bytelen))) ; } impl Default for r_fs_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFSType = r_fs_type_t ; extern "C" { pub fn r_fs_new () -> * mut RFS ; } extern "C" { pub fn r_fs_free (fs : * mut RFS) ; } extern "C" { pub fn r_fs_view (fs : * mut RFS , view : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_fs_plugin_add (fs : * mut RFS , p : * mut RFSPlugin) -> bool ; } extern "C" { pub fn r_fs_plugin_remove (fs : * mut RFS , p : * mut RFSPlugin) -> bool ; } extern "C" { pub fn r_fs_del (fs : * mut RFS , p : * mut RFSPlugin) ; } extern "C" { pub fn r_fs_mount (fs : * mut RFS , fstype : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RFSRoot ; } extern "C" { pub fn r_fs_umount (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_open (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char , create : bool) -> * mut RFSFile ; } extern "C" { pub fn r_fs_close (fs : * mut RFS , file : * mut RFSFile) ; } extern "C" { pub fn r_fs_read (fs : * mut RFS , file : * mut RFSFile , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_fs_write (fs : * mut RFS , file : * mut RFSFile , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_fs_slurp (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile ; } extern "C" { pub fn r_fs_dir (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_dir_dump (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_mkdir (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_find_name (fs : * mut RFS , name : * const :: std :: os :: raw :: c_char , glob : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_find_off (fs : * mut RFS , name : * const :: std :: os :: raw :: c_char , off : u64) -> * mut RList ; } extern "C" { pub fn r_fs_partitions (fs : * mut RFS , ptype : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RList ; } extern "C" { pub fn r_fs_type_index (i : :: std :: os :: raw :: c_int) -> * const RFSType ; } extern "C" { pub fn r_fs_name (fs : * mut RFS , offset : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_check (fs : * mut RFS , p : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_shell (shell : * mut RFSShell , fs : * mut RFS , root : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_file_new (root : * mut RFSRoot , path : * const :: std :: os :: raw :: c_char) -> * mut RFSFile ; } extern "C" { pub fn r_fs_file_free (file : * mut RFSFile) ; } extern "C" { pub fn r_fs_file_copy_abs_path (file : * mut RFSFile) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_cmd (fs : * mut RFS , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_fs_root (fs : * mut RFS , path : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_fs_root_new (path : * const :: std :: os :: raw :: c_char , delta : u64) -> * mut RFSRoot ; } extern "C" { pub fn r_fs_root_free (root : * mut RFSRoot) ; } extern "C" { pub fn r_fs_partition_new (num : :: std :: os :: raw :: c_int , start : u64 , length : u64) -> * mut RFSPartition ; } extern "C" { pub fn r_fs_partition_free (p : * mut RFSPartition) ; } extern "C" { pub fn r_fs_partition_type (part : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_fs_partition_type_get (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } pub type RBin = r_bin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinAddrline { pub addr : u64 , pub file : * const :: std :: os :: raw :: c_char , pub path : * const :: std :: os :: raw :: c_char , pub line : u32 , pub column : u32 , } # [test] fn bindgen_test_layout_RBinAddrline () { const UNINIT : :: std :: mem :: MaybeUninit < RBinAddrline > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinAddrline > () , 32usize , concat ! ("Size of: " , stringify ! (RBinAddrline))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinAddrline > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinAddrline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . column) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RBinAddrline) , "::" , stringify ! (column))) ; } impl Default for RBinAddrline { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBinDwarfAttrDef { pub attr_name : u64 , pub attr_form : u64 , pub special : i64 , } # [test] fn bindgen_test_layout_RBinDwarfAttrDef () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfAttrDef > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfAttrDef > () , 24usize , concat ! ("Size of: " , stringify ! (RBinDwarfAttrDef))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfAttrDef > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfAttrDef))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (attr_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_form) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (attr_form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . special) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAttrDef) , "::" , stringify ! (special))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfBlock { pub length : u64 , pub data : * mut u8 , } # [test] fn bindgen_test_layout_RBinDwarfBlock () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfBlock > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfBlock > () , 16usize , concat ! ("Size of: " , stringify ! (RBinDwarfBlock))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfBlock > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfBlock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfBlock) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfBlock) , "::" , stringify ! (data))) ; } impl Default for RBinDwarfBlock { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RBinDwarfAttrKind_DW_AT_KIND_ADDRESS : RBinDwarfAttrKind = 0 ; pub const RBinDwarfAttrKind_DW_AT_KIND_BLOCK : RBinDwarfAttrKind = 1 ; pub const RBinDwarfAttrKind_DW_AT_KIND_CONSTANT : RBinDwarfAttrKind = 2 ; pub const RBinDwarfAttrKind_DW_AT_KIND_EXPRLOC : RBinDwarfAttrKind = 3 ; pub const RBinDwarfAttrKind_DW_AT_KIND_FLAG : RBinDwarfAttrKind = 4 ; pub const RBinDwarfAttrKind_DW_AT_KIND_LINEPTR : RBinDwarfAttrKind = 5 ; pub const RBinDwarfAttrKind_DW_AT_KIND_LOCLISTPTR : RBinDwarfAttrKind = 6 ; pub const RBinDwarfAttrKind_DW_AT_KIND_MACPTR : RBinDwarfAttrKind = 7 ; pub const RBinDwarfAttrKind_DW_AT_KIND_RANGELISTPTR : RBinDwarfAttrKind = 8 ; pub const RBinDwarfAttrKind_DW_AT_KIND_REFERENCE : RBinDwarfAttrKind = 9 ; pub const RBinDwarfAttrKind_DW_AT_KIND_STRING : RBinDwarfAttrKind = 10 ; pub type RBinDwarfAttrKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct dwarf_attr_kind { pub attr_name : u64 , pub attr_form : u64 , pub kind : RBinDwarfAttrKind , pub __bindgen_anon_1 : dwarf_attr_kind__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union dwarf_attr_kind__bindgen_ty_1 { pub address : u64 , pub uconstant : u64 , pub sconstant : i64 , pub flag : u8 , pub reference : u64 , pub block : RBinDwarfBlock , pub string : dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 { pub offset : u64 , pub content : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (content))) ; } impl Default for dwarf_attr_kind__bindgen_ty_1__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_dwarf_attr_kind__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (address))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uconstant) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (uconstant))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sconstant) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (sconstant))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reference) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (reference))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind__bindgen_ty_1) , "::" , stringify ! (string))) ; } impl Default for dwarf_attr_kind__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_dwarf_attr_kind () { const UNINIT : :: std :: mem :: MaybeUninit < dwarf_attr_kind > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < dwarf_attr_kind > () , 40usize , concat ! ("Size of: " , stringify ! (dwarf_attr_kind))) ; assert_eq ! (:: std :: mem :: align_of :: < dwarf_attr_kind > () , 8usize , concat ! ("Alignment of " , stringify ! (dwarf_attr_kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (attr_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_form) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (attr_form))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (dwarf_attr_kind) , "::" , stringify ! (kind))) ; } impl Default for dwarf_attr_kind { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinDwarfAttrValue = dwarf_attr_kind ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBinDwarfCompUnitHdr { pub length : u64 , pub version : u16 , pub abbrev_offset : u64 , pub address_size : u8 , pub unit_type : u8 , pub dwo_id : u8 , pub type_sig : u64 , pub type_offset : u64 , pub header_size : u64 , pub unit_offset : u64 , pub is_64bit : bool , } # [test] fn bindgen_test_layout_RBinDwarfCompUnitHdr () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfCompUnitHdr > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfCompUnitHdr > () , 72usize , concat ! ("Size of: " , stringify ! (RBinDwarfCompUnitHdr))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfCompUnitHdr > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfCompUnitHdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . version) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abbrev_offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (abbrev_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . address_size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (address_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unit_type) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (unit_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dwo_id) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (dwo_id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_sig) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (type_sig))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_offset) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (type_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . header_size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (header_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unit_offset) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (unit_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_64bit) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnitHdr) , "::" , stringify ! (is_64bit))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDie { pub tag : u64 , pub abbrev_code : u64 , pub count : usize , pub capacity : usize , pub offset : u64 , pub has_children : bool , pub attr_values : * mut RBinDwarfAttrValue , } # [test] fn bindgen_test_layout_RBinDwarfDie () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDie > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDie > () , 56usize , concat ! ("Size of: " , stringify ! (RBinDwarfDie))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDie > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDie))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abbrev_code) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (abbrev_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_children) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (has_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr_values) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDie) , "::" , stringify ! (attr_values))) ; } impl Default for RBinDwarfDie { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfCompUnit { pub hdr : RBinDwarfCompUnitHdr , pub offset : u64 , pub count : usize , pub capacity : usize , pub dies : * mut RBinDwarfDie , } # [test] fn bindgen_test_layout_RBinDwarfCompUnit () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfCompUnit > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfCompUnit > () , 104usize , concat ! ("Size of: " , stringify ! (RBinDwarfCompUnit))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfCompUnit > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfCompUnit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hdr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (hdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dies) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfCompUnit) , "::" , stringify ! (dies))) ; } impl Default for RBinDwarfCompUnit { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDebugInfo { pub count : usize , pub capacity : usize , pub comp_units : * mut RBinDwarfCompUnit , pub lookup_table : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_RBinDwarfDebugInfo () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDebugInfo > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDebugInfo > () , 32usize , concat ! ("Size of: " , stringify ! (RBinDwarfDebugInfo))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDebugInfo > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDebugInfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comp_units) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (comp_units))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lookup_table) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugInfo) , "::" , stringify ! (lookup_table))) ; } impl Default for RBinDwarfDebugInfo { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfAbbrevDecl { pub code : u64 , pub tag : u64 , pub offset : u64 , pub has_children : u8 , pub count : usize , pub capacity : usize , pub defs : * mut RBinDwarfAttrDef , } # [test] fn bindgen_test_layout_RBinDwarfAbbrevDecl () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfAbbrevDecl > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfAbbrevDecl > () , 56usize , concat ! ("Size of: " , stringify ! (RBinDwarfAbbrevDecl))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfAbbrevDecl > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfAbbrevDecl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_children) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (has_children))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defs) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfAbbrevDecl) , "::" , stringify ! (defs))) ; } impl Default for RBinDwarfAbbrevDecl { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RBinDwarfDebugAbbrev { pub count : usize , pub capacity : usize , pub decls : * mut RBinDwarfAbbrevDecl , } # [test] fn bindgen_test_layout_RBinDwarfDebugAbbrev () { const UNINIT : :: std :: mem :: MaybeUninit < RBinDwarfDebugAbbrev > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBinDwarfDebugAbbrev > () , 24usize , concat ! ("Size of: " , stringify ! (RBinDwarfDebugAbbrev))) ; assert_eq ! (:: std :: mem :: align_of :: < RBinDwarfDebugAbbrev > () , 8usize , concat ! ("Alignment of " , stringify ! (RBinDwarfDebugAbbrev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . capacity) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (capacity))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decls) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RBinDwarfDebugAbbrev) , "::" , stringify ! (decls))) ; } impl Default for RBinDwarfDebugAbbrev { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_bin_dwarf_parse_aranges (a : * mut RBin , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_dwarf_parse_line (a : * mut RBin , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_dwarf_parse_abbrev (a : * mut RBin , mode : :: std :: os :: raw :: c_int) -> * mut RBinDwarfDebugAbbrev ; } extern "C" { pub fn r_bin_dwarf_parse_info (a : * mut RBin , da : * mut RBinDwarfDebugAbbrev , mode : :: std :: os :: raw :: c_int) -> * mut RBinDwarfDebugInfo ; } extern "C" { pub fn r_bin_dwarf_parse_loc (bin : * mut RBin , addr_size : :: std :: os :: raw :: c_int) -> * mut [u64 ; 11usize] ; } extern "C" { pub fn r_bin_dwarf_print_loc (loc_table : * mut [u64 ; 11usize] , addr_size : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_dwarf_free_loc (loc_table : * mut [u64 ; 11usize]) ; } extern "C" { pub fn r_bin_dwarf_free_debug_info (inf : * mut RBinDwarfDebugInfo) ; } extern "C" { pub fn r_bin_dwarf_free_debug_abbrev (da : * mut RBinDwarfDebugAbbrev) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct R_PDB7_ROOT_STREAM { _unused : [u8 ; 0] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_pdb_t { pub pdb_parse : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t) -> bool > , pub finish_pdb_parse : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t) > , pub print_types : :: std :: option :: Option < unsafe extern "C" fn (pdb : * const r_pdb_t , pj : * mut PJ , mode : :: std :: os :: raw :: c_int) > , pub cb_printf : PrintfCallback , pub root_stream : * mut R_PDB7_ROOT_STREAM , pub stream_map : * mut :: std :: os :: raw :: c_void , pub pdb_streams : * mut RList , pub pdb_streams2 : * mut RList , pub buf : * mut RBuffer , pub print_gvars : :: std :: option :: Option < unsafe extern "C" fn (pdb : * mut r_pdb_t , img_base : u64 , pj : * mut PJ , format : :: std :: os :: raw :: c_int) > , } # [test] fn bindgen_test_layout_r_pdb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_pdb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_pdb_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_pdb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_pdb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_pdb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_parse) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . finish_pdb_parse) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (finish_pdb_parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_types) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (print_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . root_stream) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (root_stream))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stream_map) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (stream_map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_streams) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_streams))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pdb_streams2) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (pdb_streams2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print_gvars) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_pdb_t) , "::" , stringify ! (print_gvars))) ; } impl Default for r_pdb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinPdb = r_pdb_t ; extern "C" { pub fn r_bin_pdb_parser (pdb : * mut RBinPdb , filename : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_pdb_parser_with_buf (pdb : * mut RBinPdb , buf : * mut RBuffer) -> bool ; } pub type RBinAttribute = u64 ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_addr_t { pub vaddr : u64 , pub paddr : u64 , pub hvaddr : u64 , pub hpaddr : u64 , pub type_ : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_addr_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_addr_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_addr_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_addr_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_addr_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_addr_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hvaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (hvaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpaddr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (hpaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_addr_t) , "::" , stringify ! (bits))) ; } pub type RBinAddr = r_bin_addr_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_name_t { pub name : * mut :: std :: os :: raw :: c_char , pub oname : * mut :: std :: os :: raw :: c_char , pub fname : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_name_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_name_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_name_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_bin_name_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_name_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_name_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (oname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_name_t) , "::" , stringify ! (fname))) ; } impl Default for r_bin_name_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinName = r_bin_name_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_hash_t { pub type_ : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub len : :: std :: os :: raw :: c_int , pub from : u64 , pub to : u64 , pub buf : [u8 ; 32usize] , pub cmd : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_hash_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_bin_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_hash_t) , "::" , stringify ! (cmd))) ; } impl Default for r_bin_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinHash = r_bin_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_hash_t { pub type_ : * const :: std :: os :: raw :: c_char , pub hex : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_file_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_hash_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bin_file_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_hash_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hex) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_hash_t) , "::" , stringify ! (hex))) ; } impl Default for r_bin_file_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinFileHash = r_bin_file_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_info_t { pub file : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub bclass : * mut :: std :: os :: raw :: c_char , pub rclass : * mut :: std :: os :: raw :: c_char , pub arch : * mut :: std :: os :: raw :: c_char , pub cpu : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , pub flags : * mut :: std :: os :: raw :: c_char , pub abi : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub subsystem : * mut :: std :: os :: raw :: c_char , pub rpath : * mut :: std :: os :: raw :: c_char , pub guid : * mut :: std :: os :: raw :: c_char , pub debug_file_name : * mut :: std :: os :: raw :: c_char , pub lang : * const :: std :: os :: raw :: c_char , pub default_cc : * mut :: std :: os :: raw :: c_char , pub file_hashes : * mut RList , pub bits : :: std :: os :: raw :: c_int , pub has_retguard : :: std :: os :: raw :: c_int , pub has_va : bool , pub has_pi : bool , pub has_canary : bool , pub has_sanitizers : bool , pub has_crypto : bool , pub has_nx : bool , pub has_nobtcfi : bool , pub has_libinjprot : bool , pub big_endian : :: std :: os :: raw :: c_int , pub has_lit : bool , pub actual_checksum : * mut :: std :: os :: raw :: c_char , pub claimed_checksum : * mut :: std :: os :: raw :: c_char , pub pe_overlay : :: std :: os :: raw :: c_int , pub signature : bool , pub dbg_info : u64 , pub sum : [RBinHash ; 3usize] , pub baddr : u64 , pub intrp : * mut :: std :: os :: raw :: c_char , pub compiler : * mut :: std :: os :: raw :: c_char , pub charset : * mut :: std :: os :: raw :: c_char , pub dbglink : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_info_t > () , 472usize , concat ! ("Size of: " , stringify ! (r_bin_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bclass) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (bclass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rclass) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (rclass))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (machine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subsystem) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (subsystem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rpath) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (rpath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . guid) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (guid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debug_file_name) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (debug_file_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_cc) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (default_cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_hashes) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (file_hashes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_retguard) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_retguard))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_va) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_va))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_pi) as usize - ptr as usize } , 145usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_pi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_canary) as usize - ptr as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_canary))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_sanitizers) as usize - ptr as usize } , 147usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_sanitizers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_crypto) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_crypto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_nx) as usize - ptr as usize } , 149usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_nx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_nobtcfi) as usize - ptr as usize } , 150usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_nobtcfi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_libinjprot) as usize - ptr as usize } , 151usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_libinjprot))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_lit) as usize - ptr as usize } , 156usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (has_lit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . actual_checksum) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (actual_checksum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . claimed_checksum) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (claimed_checksum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pe_overlay) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (pe_overlay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 180usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg_info) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (dbg_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sum) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (sum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 432usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . intrp) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (intrp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . compiler) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (compiler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charset) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbglink) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_bin_info_t) , "::" , stringify ! (dbglink))) ; } impl Default for r_bin_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinInfo = r_bin_info_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_symbol_t { pub name : * mut RBinName , pub classname : * mut :: std :: os :: raw :: c_char , pub libname : * mut :: std :: os :: raw :: c_char , pub forwarder : * const :: std :: os :: raw :: c_char , pub bind : * const :: std :: os :: raw :: c_char , pub type_ : * const :: std :: os :: raw :: c_char , pub rtype : * const :: std :: os :: raw :: c_char , pub is_imported : bool , pub vaddr : u64 , pub paddr : u64 , pub size : u32 , pub ordinal : u32 , pub lang : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub attr : RBinAttribute , pub dup_count : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_symbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_symbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_symbol_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_bin_symbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_symbol_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_symbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (classname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forwarder) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (forwarder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bind) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtype) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (rtype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_imported) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (is_imported))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ordinal) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (ordinal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup_count) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_symbol_t) , "::" , stringify ! (dup_count))) ; } impl Default for r_bin_symbol_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinSymbol = r_bin_symbol_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_section_t { pub name : * mut :: std :: os :: raw :: c_char , pub size : u64 , pub vsize : u64 , pub vaddr : u64 , pub paddr : u64 , pub perm : u32 , pub flags : u32 , pub type_ : * const :: std :: os :: raw :: c_char , pub arch : * const :: std :: os :: raw :: c_char , pub format : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub has_strings : bool , pub add : bool , pub is_data : bool , pub is_segment : bool , pub backing_fd : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_section_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_section_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_section_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_section_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_section_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_section_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vsize) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (vsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_strings) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (has_strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . add) as usize - ptr as usize } , 77usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_data) as usize - ptr as usize } , 78usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (is_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_segment) as usize - ptr as usize } , 79usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (is_segment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . backing_fd) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_section_t) , "::" , stringify ! (backing_fd))) ; } impl Default for r_bin_section_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinSection = r_bin_section_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_import_t { pub name : * mut RBinName , pub libname : * mut :: std :: os :: raw :: c_char , pub bind : * const :: std :: os :: raw :: c_char , pub type_ : * const :: std :: os :: raw :: c_char , pub classname : * mut :: std :: os :: raw :: c_char , pub descriptor : * mut :: std :: os :: raw :: c_char , pub ordinal : u32 , pub in_shdr : bool , pub is_sht_null : bool , pub is_vaddr : bool , pub is_imported : bool , } # [test] fn bindgen_test_layout_r_bin_import_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_import_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_import_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_bin_import_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_import_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_import_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bind) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (bind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classname) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (classname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . descriptor) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (descriptor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ordinal) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (ordinal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_shdr) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (in_shdr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_sht_null) as usize - ptr as usize } , 53usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_sht_null))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_vaddr) as usize - ptr as usize } , 54usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_imported) as usize - ptr as usize } , 55usize , concat ! ("Offset of field: " , stringify ! (r_bin_import_t) , "::" , stringify ! (is_imported))) ; } impl Default for r_bin_import_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinImport = r_bin_import_t ; extern "C" { pub fn r_bin_symbol_fini (sym : * mut RBinSymbol) ; } extern "C" { pub fn r_bin_import_fini (sym : * mut RBinImport) ; } pub type RVecRBinImport = r_vec_RVecRBinImport_t ; pub type RVecRBinSymbol = r_vec_RVecRBinSymbol_t ; pub type RVecRBinSection = r_vec_RVecRBinSection_t ; pub type RVecRBinEntry = r_vec_RVecRBinEntry_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_bin_object_t { pub baddr : u64 , pub baddr_shift : i64 , pub loadaddr : u64 , pub boffset : u64 , pub size : u64 , pub obj_size : u64 , pub pool : * mut RStrpool , pub sections : * mut RList , pub imports : * mut RList , pub symbols : * mut RList , pub imports_vec : RVecRBinImport , pub symbols_vec : RVecRBinSymbol , pub sections_vec : RVecRBinSection , pub entries_vec : RVecRBinEntry , pub entries : * mut RList , pub fields : * mut RList , pub libs : * mut RList , pub relocs : * mut RRBTree , pub strings : * mut RList , pub classes : * mut RList , pub classes_ht : * mut [u64 ; 11usize] , pub methods_ht : * mut [u64 ; 11usize] , pub lines : * mut RList , pub strings_db : * mut [u64 ; 11usize] , pub mem : * mut RList , pub maps : * mut RList , pub regstate : * mut :: std :: os :: raw :: c_char , pub info : * mut RBinInfo , pub binsym : [* mut RBinAddr ; 4usize] , pub plugin : * mut r_bin_plugin_t , pub lang : :: std :: os :: raw :: c_int , pub kv : * mut Sdb , pub addr2klassmethod : * mut [u64 ; 11usize] , pub filters : * mut :: std :: os :: raw :: c_void , pub bin_obj : * mut :: std :: os :: raw :: c_void , pub is_reloc_patched : bool , } # [test] fn bindgen_test_layout_r_bin_object_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_object_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_object_t > () , 416usize , concat ! ("Size of: " , stringify ! (r_bin_object_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_object_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_bin_object_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr_shift) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (baddr_shift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . boffset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (boffset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obj_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (obj_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports_vec) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (imports_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols_vec) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (symbols_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections_vec) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (sections_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries_vec) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (entries_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libs) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . relocs) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes_ht) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (classes_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods_ht) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (methods_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings_db) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (strings_db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regstate) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (regstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binsym) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (binsym))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kv) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (kv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr2klassmethod) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (addr2klassmethod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filters) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (filters))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_obj) as usize - ptr as usize } , 392usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (bin_obj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reloc_patched) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_bin_object_t) , "::" , stringify ! (is_reloc_patched))) ; } impl Default for r_bin_object_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinObject = r_bin_object_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_options_t { pub pluginname : * const :: std :: os :: raw :: c_char , pub baseaddr : u64 , pub loadaddr : u64 , pub sz : u64 , pub xtr_idx : :: std :: os :: raw :: c_int , pub fd : :: std :: os :: raw :: c_int , pub rawstr : :: std :: os :: raw :: c_int , pub nofuncstarts : bool , pub filename : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_file_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_options_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_bin_file_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pluginname) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (pluginname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baseaddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (baseaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_idx) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (xtr_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (rawstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nofuncstarts) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (nofuncstarts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filename) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_options_t) , "::" , stringify ! (filename))) ; } impl Default for r_bin_file_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinFileOptions = r_bin_file_options_t ; pub type RBinAddrLineStore = r_bin_addrline_store_t ; pub type RBinAddrLineAdd = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , item : RBinAddrline) -> bool > ; pub type RBinAddrLineGet = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , addr : u64) -> * mut RBinAddrline > ; pub type RBinAddrLineReset = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore) > ; pub type RBinAddrLineDel = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , addr : u64) > ; pub type RBinDbgInfoCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , item : * mut RBinAddrline) -> bool > ; pub type RBinAddrLineFiles = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore) -> * mut RList > ; pub type RBinAddrLineForeach = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinAddrLineStore , cb : RBinDbgInfoCallback , user : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_addrline_store_t { pub used : bool , pub storage : * mut :: std :: os :: raw :: c_void , pub al_add : RBinAddrLineAdd , pub al_add_cu : RBinAddrLineAdd , pub al_get : RBinAddrLineGet , pub al_del : RBinAddrLineDel , pub al_reset : RBinAddrLineReset , pub al_files : RBinAddrLineFiles , pub al_foreach : RBinAddrLineForeach , } # [test] fn bindgen_test_layout_r_bin_addrline_store_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_addrline_store_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_addrline_store_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_addrline_store_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_addrline_store_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_addrline_store_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . used) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (used))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . storage) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (storage))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_add) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_add_cu) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_add_cu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_get) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_del) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_reset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_files) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_files))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . al_foreach) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_addrline_store_t) , "::" , stringify ! (al_foreach))) ; } impl Default for r_bin_addrline_store_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " XX curplugin == o->plugin"] # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_file_t { pub file : * mut :: std :: os :: raw :: c_char , pub fd : :: std :: os :: raw :: c_int , pub size : u64 , pub rawstr : :: std :: os :: raw :: c_int , pub strmode : :: std :: os :: raw :: c_int , pub id : u32 , pub buf : * mut RBuffer , pub offset : u64 , pub bo : * mut RBinObject , pub xtr_obj : * mut :: std :: os :: raw :: c_void , pub user_baddr : u64 , pub loadaddr : u64 , pub minstrlen : :: std :: os :: raw :: c_int , pub maxstrlen : :: std :: os :: raw :: c_int , pub narch : :: std :: os :: raw :: c_int , pub curxtr : * mut r_bin_xtr_plugin_t , pub xtr_data : * mut RList , pub sdb : * mut Sdb , pub sdb_info : * mut Sdb , pub sdb_addrinfo : * mut Sdb , pub addrline : RBinAddrLineStore , pub addrinfo_priv : * mut :: std :: os :: raw :: c_void , pub rbin : * mut r_bin_t , pub string_count : :: std :: os :: raw :: c_int , pub options : * mut RBinFileOptions , } # [test] fn bindgen_test_layout_r_bin_file_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_file_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_file_t > () , 248usize , concat ! ("Size of: " , stringify ! (r_bin_file_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_file_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_file_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (rawstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strmode) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (strmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bo) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (bo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_obj) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (xtr_obj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_baddr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (user_baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadaddr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (loadaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrlen) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (maxstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . narch) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (narch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curxtr) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (curxtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_data) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (xtr_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_info) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_addrinfo) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (sdb_addrinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (addrline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrinfo_priv) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (addrinfo_priv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rbin) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (rbin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_count) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (string_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_file_t) , "::" , stringify ! (options))) ; } impl Default for r_bin_file_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " XX curplugin == o->plugin"] pub type RBinFile = r_bin_file_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_options_t { pub fake_aslr : bool , pub demangle_usecmd : bool , pub demangle_trylib : bool , pub verbose : bool , pub use_xtr : bool , pub use_ldr : bool , pub debase64 : bool , pub minstrlen : :: std :: os :: raw :: c_int , pub maxstrlen : :: std :: os :: raw :: c_int , pub maxsymlen : :: std :: os :: raw :: c_int , pub maxstrbuf : u64 , pub limit : :: std :: os :: raw :: c_int , pub rawstr : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_options_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fake_aslr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (fake_aslr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_usecmd) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (demangle_usecmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_trylib) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (demangle_trylib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_xtr) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (use_xtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_ldr) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (use_ldr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debase64) as usize - ptr as usize } , 6usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (debase64))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrlen) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxsymlen) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxsymlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstrbuf) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (maxstrbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawstr) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_bin_options_t) , "::" , stringify ! (rawstr))) ; } pub type RBinOptions = r_bin_options_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_t { pub file : * const :: std :: os :: raw :: c_char , pub cur : * mut RBinFile , pub narch : :: std :: os :: raw :: c_int , pub user : * mut :: std :: os :: raw :: c_void , pub strings_nofp : bool , pub sdb : * mut Sdb , pub ids : * mut RIDStorage , pub plugins : * mut RList , pub binxtrs : * mut RList , pub binldrs : * mut RList , pub binfiles : * mut RList , pub cb_printf : PrintfCallback , pub loadany : :: std :: os :: raw :: c_int , pub iob : RIOBind , pub consb : RConsBind , pub force : * mut :: std :: os :: raw :: c_char , pub want_dbginfo : bool , pub filter : :: std :: os :: raw :: c_int , pub strfilter : :: std :: os :: raw :: c_char , pub strpurge : * mut :: std :: os :: raw :: c_char , pub srcdir : * mut :: std :: os :: raw :: c_char , pub srcdir_base : * mut :: std :: os :: raw :: c_char , pub prefix : * mut :: std :: os :: raw :: c_char , pub strenc : * mut :: std :: os :: raw :: c_char , pub filter_rules : u64 , pub constpool : RStrConstPool , pub options : RBinOptions , } # [test] fn bindgen_test_layout_r_bin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_t > () , 584usize , concat ! ("Size of: " , stringify ! (r_bin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . narch) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (narch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings_nofp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strings_nofp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ids) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (ids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binxtrs) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binxtrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binldrs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binldrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binfiles) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (binfiles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadany) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (loadany))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 400usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . force) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (force))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . want_dbginfo) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (want_dbginfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 476usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strfilter) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strpurge) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strpurge))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcdir) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (srcdir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcdir_base) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (srcdir_base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strenc) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (strenc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter_rules) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (filter_rules))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . options) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_bin_t) , "::" , stringify ! (options))) ; } impl Default for r_bin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_metadata_t { pub arch : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub libname : * mut :: std :: os :: raw :: c_char , pub machine : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub xtr_type : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bin_xtr_metadata_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_metadata_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_metadata_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_metadata_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_metadata_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_metadata_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . machine) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (machine))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xtr_type) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_metadata_t) , "::" , stringify ! (xtr_type))) ; } impl Default for r_bin_xtr_metadata_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrMetadata = r_bin_xtr_metadata_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_data_t { pub file : * mut :: std :: os :: raw :: c_char , pub buf : * mut RBuffer , pub size : u64 , pub offset : u64 , pub baddr : u64 , pub laddr : u64 , pub file_count : :: std :: os :: raw :: c_int , pub loaded : bool , pub metadata : * mut RBinXtrMetadata , } # [test] fn bindgen_test_layout_r_bin_xtr_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_data_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . laddr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (laddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_count) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (file_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loaded) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (loaded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . metadata) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_data_t) , "::" , stringify ! (metadata))) ; } impl Default for r_bin_xtr_data_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrData = r_bin_xtr_data_t ; extern "C" { pub fn r_bin_xtrdata_new (buf : * mut RBuffer , offset : u64 , size : u64 , file_count : u32 , metadata : * mut RBinXtrMetadata) -> * mut RBinXtrData ; } extern "C" { pub fn r_bin_xtrdata_free (data : * mut :: std :: os :: raw :: c_void) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_xtr_plugin_t { pub meta : RPluginMeta , pub check : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer) -> bool > , pub extract_from_bytes : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * const u8 , size : u64 , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extract_from_buffer : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * mut RBuffer , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extractall_from_bytes : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * const u8 , size : u64) -> * mut RList > , pub extractall_from_buffer : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , buf : * mut RBuffer) -> * mut RList > , pub extract : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , idx : :: std :: os :: raw :: c_int) -> * mut RBinXtrData > , pub extractall : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> * mut RList > , pub loadbuf : bool , pub weak_guess : bool , pub load : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> bool > , pub size : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> :: std :: os :: raw :: c_int > , pub destroy : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub free_xtr : :: std :: option :: Option < unsafe extern "C" fn (xtr_obj : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_bin_xtr_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_xtr_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_xtr_plugin_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_bin_xtr_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_xtr_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_xtr_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract_from_bytes) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract_from_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract_from_buffer) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract_from_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall_from_bytes) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall_from_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall_from_buffer) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall_from_buffer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extract) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extract))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . extractall) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (extractall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadbuf) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (loadbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak_guess) as usize - ptr as usize } , 121usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (weak_guess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destroy) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free_xtr) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_xtr_plugin_t) , "::" , stringify ! (free_xtr))) ; } impl Default for r_bin_xtr_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinXtrPlugin = r_bin_xtr_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_ldr_plugin_t { pub meta : RPluginMeta , pub load : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> bool > , } # [test] fn bindgen_test_layout_r_bin_ldr_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_ldr_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_ldr_plugin_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_ldr_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_ldr_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_ldr_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_ldr_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_ldr_plugin_t) , "::" , stringify ! (load))) ; } impl Default for r_bin_ldr_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinLdrPlugin = r_bin_ldr_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_arch_options_t { pub arch : * const :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_bin_arch_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_arch_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_arch_options_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_bin_arch_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_arch_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_arch_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_arch_options_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_arch_options_t) , "::" , stringify ! (bits))) ; } impl Default for r_bin_arch_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinArchOptions = r_bin_arch_options_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_trycatch_t { pub source : u64 , pub from : u64 , pub to : u64 , pub handler : u64 , pub filter : u64 , } # [test] fn bindgen_test_layout_r_bin_trycatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_trycatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_trycatch_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_trycatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_trycatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_trycatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . source) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (source))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . handler) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (handler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_trycatch_t) , "::" , stringify ! (filter))) ; } pub type RBinTrycatch = r_bin_trycatch_t ; extern "C" { pub fn r_bin_trycatch_new (source : u64 , from : u64 , to : u64 , handler : u64 , filter : u64) -> * mut RBinTrycatch ; } extern "C" { pub fn r_bin_trycatch_free (tc : * mut RBinTrycatch) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_plugin_t { pub meta : RPluginMeta , pub init : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) > , pub get_sdb : :: std :: option :: Option < unsafe extern "C" fn (obj : * mut RBinFile) -> * mut Sdb > , pub load : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer , laddr : u64) -> bool > , pub size : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBinFile) -> u64 > , pub destroy : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) > , pub check : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , buf : * mut RBuffer) -> bool > , pub baddr : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> u64 > , pub binsym : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , num : :: std :: os :: raw :: c_int) -> * mut RBinAddr > , pub entries : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub sections : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub symbols : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub imports : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub sections_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub symbols_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub imports_vec : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> bool > , pub lines : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub strings : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub info : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RBinInfo > , pub fields : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub libs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub relocs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub trycatch : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub classes : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub mem : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub patch_relocs : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub maps : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub hashes : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut RList > , pub header : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) > , pub signature : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , json : bool) -> * mut :: std :: os :: raw :: c_char > , pub demangle_type : :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub write : * mut r_bin_write_t , pub get_offset : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> u64 > , pub get_name : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , simplified : bool) -> * const :: std :: os :: raw :: c_char > , pub get_vaddr : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , baddr : u64 , paddr : u64 , vaddr : u64) -> u64 > , pub create : :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , code : * const u8 , codelen : :: std :: os :: raw :: c_int , data : * const u8 , datalen : :: std :: os :: raw :: c_int , opt : * mut RBinArchOptions) -> * mut RBuffer > , pub demangle : :: std :: option :: Option < unsafe extern "C" fn (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > , pub regstate : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> * mut :: std :: os :: raw :: c_char > , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , command : * const :: std :: os :: raw :: c_char) -> bool > , pub minstrlen : :: std :: os :: raw :: c_int , pub strfilter : :: std :: os :: raw :: c_char , pub weak_guess : bool , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_bin_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_plugin_t > () , 392usize , concat ! ("Size of: " , stringify ! (r_bin_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_sdb) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . destroy) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (destroy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binsym) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (binsym))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entries) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (entries))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sections_vec) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (sections_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols_vec) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (symbols_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports_vec) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (imports_vec))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (lines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libs) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . relocs) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trycatch) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (trycatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . classes) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch_relocs) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (patch_relocs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hashes) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (hashes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . header) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (header))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signature) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (signature))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle_type) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (demangle_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_offset) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_name) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_vaddr) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (get_vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . create) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (create))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (demangle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regstate) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (regstate))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstrlen) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (minstrlen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strfilter) as usize - ptr as usize } , 380usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (strfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weak_guess) as usize - ptr as usize } , 381usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (weak_guess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_bin_plugin_t) , "::" , stringify ! (user))) ; } impl Default for r_bin_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinPlugin = r_bin_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_class_t { pub name : * mut RBinName , pub super_ : * mut RList , pub visibility_str : * mut :: std :: os :: raw :: c_char , pub index : :: std :: os :: raw :: c_int , pub addr : u64 , pub instance_size : usize , pub ns : * mut :: std :: os :: raw :: c_char , pub methods : * mut RList , pub fields : * mut RList , pub attr : RBinAttribute , pub lang : u64 , } # [test] fn bindgen_test_layout_r_bin_class_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_class_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_class_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_class_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_class_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_class_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . super_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (super_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility_str) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (visibility_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . instance_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (instance_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ns) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (ns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (methods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fields) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (fields))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (attr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_class_t) , "::" , stringify ! (lang))) ; } impl Default for r_bin_class_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinClass = r_bin_class_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_reloc_t { pub type_ : u8 , pub additive : u8 , pub ntype : u64 , pub symbol : * mut RBinSymbol , pub import : * mut RBinImport , pub laddr : u64 , pub addend : i64 , pub vaddr : u64 , pub paddr : u64 , pub visibility : u32 , pub is_ifunc : bool , } # [test] fn bindgen_test_layout_r_bin_reloc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_reloc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_reloc_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_bin_reloc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_reloc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_reloc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . additive) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (additive))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ntype) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (ntype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbol) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (symbol))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . import) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (import))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . laddr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (laddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addend) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (addend))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (visibility))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_ifunc) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_bin_reloc_t) , "::" , stringify ! (is_ifunc))) ; } impl Default for r_bin_reloc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinReloc = r_bin_reloc_t ; pub const RBinFieldKind_R_BIN_FIELD_KIND_VARIABLE : RBinFieldKind = 0 ; pub const RBinFieldKind_R_BIN_FIELD_KIND_FIELD : RBinFieldKind = 1 ; pub const RBinFieldKind_R_BIN_FIELD_KIND_PROPERTY : RBinFieldKind = 2 ; pub type RBinFieldKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_field_t { pub vaddr : u64 , pub paddr : u64 , pub value : u64 , pub size : :: std :: os :: raw :: c_int , pub offset : :: std :: os :: raw :: c_int , pub name : * mut RBinName , pub type_ : * mut RBinName , pub kind : RBinFieldKind , pub comment : * mut :: std :: os :: raw :: c_char , pub format : * mut :: std :: os :: raw :: c_char , pub format_named : bool , pub attr : RBinAttribute , } # [test] fn bindgen_test_layout_r_bin_field_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_field_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_field_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bin_field_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_field_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_field_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vaddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (vaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . paddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (paddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . format_named) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (format_named))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bin_field_t) , "::" , stringify ! (attr))) ; } impl Default for r_bin_field_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinField = r_bin_field_t ; extern "C" { pub fn r_bin_field_kindstr (f : * mut RBinField) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_field_new (paddr : u64 , vaddr : u64 , value : u64 , size : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char , comment : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , format_named : bool) -> * mut RBinField ; } extern "C" { pub fn r_bin_field_free (arg1 : * mut :: std :: os :: raw :: c_void) ; } pub type RBinWriteAddLib = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , lib : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RBinWriteScnResize = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , newsize : u64) -> u64 > ; pub type RBinWriteScnPerms = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , perms : :: std :: os :: raw :: c_int) -> bool > ; pub type RBinWriteEntry = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , addr : u64) -> bool > ; pub type RBinWriteRpathDel = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_bin_write_t { pub scn_resize : RBinWriteScnResize , pub scn_perms : RBinWriteScnPerms , pub rpath_del : RBinWriteRpathDel , pub entry : RBinWriteEntry , pub addlib : RBinWriteAddLib , } # [test] fn bindgen_test_layout_r_bin_write_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_write_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_write_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_bin_write_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_write_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_write_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scn_resize) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (scn_resize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scn_perms) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (scn_perms))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rpath_del) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (rpath_del))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entry) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (entry))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addlib) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_write_t) , "::" , stringify ! (addlib))) ; } pub type RBinGetOffset = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RBinGetName = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , type_ : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int , sd : bool) -> * const :: std :: os :: raw :: c_char > ; pub type RBinGetSections = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin) -> * mut RList > ; pub type RBinGetSectionAt = :: std :: option :: Option < unsafe extern "C" fn (bin : * mut RBin , addr : u64) -> * mut RBinSection > ; pub type RBinDemangle = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , def : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64 , libs : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RBinBaddr = :: std :: option :: Option < unsafe extern "C" fn (bf : * mut RBinFile , addr : u64) -> u64 > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bin_bind_t { pub bin : * mut RBin , pub get_offset : RBinGetOffset , pub get_name : RBinGetName , pub get_sections : RBinGetSections , pub get_vsect_at : RBinGetSectionAt , pub demangle : RBinDemangle , pub addrline_add : RBinAddrLineAdd , pub addrline_get : RBinAddrLineGet , pub baddr : RBinBaddr , pub visibility : u32 , } # [test] fn bindgen_test_layout_r_bin_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bin_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bin_bind_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_bin_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bin_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bin_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_sections) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_sections))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_vsect_at) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (get_vsect_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangle) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (demangle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline_add) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (addrline_add))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrline_get) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (addrline_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visibility) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bin_bind_t) , "::" , stringify ! (visibility))) ; } impl Default for r_bin_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBinBind = r_bin_bind_t ; extern "C" { pub fn r_bin_section_clone (s : * mut RBinSection) -> * mut RBinSection ; } extern "C" { pub fn r_bin_info_free (rb : * mut RBinInfo) ; } extern "C" { pub fn r_bin_import_free (imp : * mut RBinImport) ; } extern "C" { pub fn r_bin_symbol_free (sym : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_import_tags (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_symbol_new (name : * const :: std :: os :: raw :: c_char , paddr : u64 , vaddr : u64) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_symbol_clone (bs : * mut RBinSymbol) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_symbol_copy (dst : * mut RBinSymbol , src : * mut RBinSymbol) ; } extern "C" { pub fn r_bin_string_free (_str : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_import_clone (o : * mut RBinImport) -> * mut RBinImport ; } extern "C" { pub fn r_bin_file_options_init (opt : * mut RBinFileOptions , fd : :: std :: os :: raw :: c_int , baseaddr : u64 , loadaddr : u64 , rawstr : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_arch_options_init (opt : * mut RBinArchOptions , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_new () -> * mut RBin ; } extern "C" { pub fn r_bin_free (bin : * mut RBin) ; } extern "C" { pub fn r_bin_open (bin : * mut RBin , file : * const :: std :: os :: raw :: c_char , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_open_io (bin : * mut RBin , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_open_buf (bin : * mut RBin , buf : * mut RBuffer , opt : * mut RBinFileOptions) -> bool ; } extern "C" { pub fn r_bin_reload (bin : * mut RBin , bf_id : u32 , baseaddr : u64) -> bool ; } extern "C" { pub fn r_bin_command (bin : * mut RBin , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_class_new (name : * const :: std :: os :: raw :: c_char , super_ : * const :: std :: os :: raw :: c_char , attr : u64) -> * mut RBinClass ; } extern "C" { pub fn r_bin_class_free (arg1 : * mut RBinClass) ; } extern "C" { pub fn r_bin_file_open (bin : * mut RBin , file : * const :: std :: os :: raw :: c_char , opt : * mut RBinFileOptions) -> * mut RBinFile ; } extern "C" { pub fn r_bin_bind (b : * mut RBin , bnd : * mut RBinBind) ; } extern "C" { pub fn r_bin_plugin_add (bin : * mut RBin , plugin : * mut RBinPlugin) -> bool ; } extern "C" { pub fn r_bin_plugin_remove (bin : * mut RBin , plugin : * mut RBinPlugin) -> bool ; } extern "C" { pub fn r_bin_xtr_add (bin : * mut RBin , foo : * mut RBinXtrPlugin) -> bool ; } extern "C" { pub fn r_bin_ldr_add (bin : * mut RBin , foo : * mut RBinLdrPlugin) -> bool ; } extern "C" { pub fn r_bin_list (bin : * mut RBin , pj : * mut PJ , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_list_plugin (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , pj : * mut PJ , json : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_get_binplugin_by_buffer (bin : * mut RBin , bf : * mut RBinFile , buf : * mut RBuffer) -> * mut RBinPlugin ; } extern "C" { pub fn r_bin_force_plugin (bin : * mut RBin , pname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_get_baddr (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_file_get_baddr (bf : * mut RBinFile) -> u64 ; } extern "C" { pub fn r_bin_set_user_ptr (bin : * mut RBin , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_get_info (bin : * mut RBin) -> * mut RBinInfo ; } extern "C" { pub fn r_bin_set_baddr (bin : * mut RBin , baddr : u64) ; } extern "C" { pub fn r_bin_get_laddr (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_get_size (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_get_sym (bin : * mut RBin , sym : :: std :: os :: raw :: c_int) -> * mut RBinAddr ; } extern "C" { pub fn r_bin_raw_strings (a : * mut RBinFile , min : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_dump_strings (a : * mut RBinFile , min : :: std :: os :: raw :: c_int , raw : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_bin_get_entries (bin : * mut RBin) -> * const RList ; } extern "C" { pub fn r_bin_get_imports (bin : * mut RBin) -> * const RList ; } extern "C" { pub fn r_bin_get_libs (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_patch_relocs (bin : * mut RBinFile) -> * mut RRBTree ; } extern "C" { pub fn r_bin_get_relocs (bin : * mut RBin) -> * mut RRBTree ; } extern "C" { pub fn r_bin_get_sections (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_classes (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_strings (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_file_get_trycatch (bf : * mut RBinFile) -> * mut RList ; } extern "C" { pub fn r_bin_get_symbols (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_get_symbols_vec (bin : * mut RBin) -> * mut RVecRBinSymbol ; } extern "C" { pub fn r_bin_reset_strings (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_is_big_endian (bin : * mut RBin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_is_static (bin : * mut RBin) -> bool ; } extern "C" { pub fn r_bin_get_vaddr (bin : * mut RBin , paddr : u64 , vaddr : u64) -> u64 ; } extern "C" { pub fn r_bin_file_get_vaddr (bf : * mut RBinFile , paddr : u64 , vaddr : u64) -> u64 ; } extern "C" { pub fn r_bin_load_languages (binfile : * mut RBinFile) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_cur (bin : * mut RBin) -> * mut RBinFile ; } extern "C" { pub fn r_bin_cur_object (bin : * mut RBin) -> * mut RBinObject ; } extern "C" { pub fn r_bin_select (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_select_bfid (bin : * mut RBin , bf_id : u32) -> bool ; } extern "C" { pub fn r_bin_use_arch (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_list_archs (bin : * mut RBin , pj : * mut PJ , t : * mut RTable , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bin_create (bin : * mut RBin , plugin_name : * const :: std :: os :: raw :: c_char , code : * const u8 , codelen : :: std :: os :: raw :: c_int , data : * const u8 , datalen : :: std :: os :: raw :: c_int , opt : * mut RBinArchOptions) -> * mut RBuffer ; } extern "C" { pub fn r_bin_package (bin : * mut RBin , type_ : * const :: std :: os :: raw :: c_char , file : * const :: std :: os :: raw :: c_char , files : * mut RList) -> * mut RBuffer ; } extern "C" { pub fn r_bin_string_type (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_entry_type_string (etype : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_file_object_new_from_xtr_data (bin : * mut RBin , bf : * mut RBinFile , baseaddr : u64 , loadaddr : u64 , data : * mut RBinXtrData) -> bool ; } extern "C" { pub fn r_bin_file_close (bin : * mut RBin , bd : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_file_free (bf_ : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_file_at (bin : * mut RBin , addr : u64) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_object_id (bin : * mut RBin , binobj_id : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_get_symbols (bf : * mut RBinFile) -> * mut RList ; } extern "C" { pub fn r_bin_file_get_symbols_vec (bf : * mut RBinFile) -> * mut RVecRBinSymbol ; } extern "C" { pub fn r_bin_file_add_class (binfile : * mut RBinFile , name : * const :: std :: os :: raw :: c_char , super_ : * const :: std :: os :: raw :: c_char , attr : u64) -> * mut RBinClass ; } extern "C" { pub fn r_bin_file_add_method (bf : * mut RBinFile , rawname : * const :: std :: os :: raw :: c_char , classname : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , nargs : :: std :: os :: raw :: c_int) -> * mut RBinSymbol ; } extern "C" { pub fn r_bin_file_add_field (binfile : * mut RBinFile , classname : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> * mut RBinField ; } extern "C" { pub fn r_bin_file_find_by_arch_bits (bin : * mut RBin , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_id (bin : * mut RBin , bin_id : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_fd (bin : * mut RBin , bin_fd : u32) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_find_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> * mut RBinFile ; } extern "C" { pub fn r_bin_file_set_cur_binfile (bin : * mut RBin , bf : * mut RBinFile) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_file_deref (bin : * mut RBin , a : * mut RBinFile) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_fd (bin : * mut RBin , bin_fd : u32) -> bool ; } extern "C" { pub fn r_bin_file_set_cur_by_id (bin : * mut RBin , bin_id : u32) -> bool ; } extern "C" { pub fn r_bin_file_delete_all (bin : * mut RBin) -> u64 ; } extern "C" { pub fn r_bin_file_delete (bin : * mut RBin , bin_id : u32) -> bool ; } extern "C" { pub fn r_bin_file_merge (bo : * mut RBinFile , b : * mut RBinFile) ; } extern "C" { pub fn r_bin_file_compute_hashes (bin : * mut RBin , limit : u64) -> * mut RList ; } extern "C" { pub fn r_bin_file_set_hashes (bin : * mut RBin , new_hashes : * mut RList) -> * mut RList ; } extern "C" { pub fn r_bin_file_cur_plugin (binfile : * mut RBinFile) -> * mut RBinPlugin ; } extern "C" { pub fn r_bin_file_hash_free (fhash : * mut RBinFileHash) ; } extern "C" { pub fn r_bin_object_set_items (binfile : * mut RBinFile , o : * mut RBinObject) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_object_delete (bin : * mut RBin , binfile_id : u32) -> bool ; } extern "C" { pub fn r_bin_mem_free (data : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bin_demangle (binfile : * mut RBinFile , lang : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64 , libs : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_java (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_freepascal (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_cxx (binfile : * mut RBinFile , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_msvc (str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_swift (s : * const :: std :: os :: raw :: c_char , syscmd : bool , trylib : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_objc (binfile : * mut RBinFile , sym : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_rust (binfile : * mut RBinFile , str_ : * const :: std :: os :: raw :: c_char , vaddr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_demangle_type (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bin_demangle_list (bin : * mut RBin) ; } extern "C" { pub fn r_bin_demangle_plugin (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_meth_flag_string (flag : u64 , compact : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_section_at (o : * mut RBinObject , off : u64 , va : :: std :: os :: raw :: c_int) -> * mut RBinSection ; } extern "C" { pub fn r_bin_addrline_reset (bin : * mut RBin) ; } extern "C" { pub fn r_bin_addrline_reset_at (bin : * mut RBin , addr : u64) ; } extern "C" { pub fn r_bin_addrline_foreach (bin : * mut RBin , item : RBinDbgInfoCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_bin_addrline_files (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_addrline_at (bin : * mut RBin , addr : u64) -> * mut RBinAddrline ; } extern "C" { pub fn r_bin_addrline_free (di : * mut RBinAddrline) ; } extern "C" { pub fn r_bin_addrline_get (bin : * mut RBin , addr : u64) -> * mut RBinAddrline ; } extern "C" { pub fn r_bin_addrline_tostring (bin : * mut RBin , addr : u64 , origin : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_wr_addlib (bin : * mut RBin , lib : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_wr_scn_resize (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , size : u64) -> u64 ; } extern "C" { pub fn r_bin_wr_scn_perms (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char , perms : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bin_wr_rpath_del (bin : * mut RBin) -> bool ; } extern "C" { pub fn r_bin_wr_entry (bin : * mut RBin , addr : u64) -> bool ; } extern "C" { pub fn r_bin_wr_output (bin : * mut RBin , filename : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bin_lang_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_get_mem (bin : * mut RBin) -> * mut RList ; } extern "C" { pub fn r_bin_name_new (name : * const :: std :: os :: raw :: c_char) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_new_from (name : * mut :: std :: os :: raw :: c_char) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_clone (bn : * mut RBinName) -> * mut RBinName ; } extern "C" { pub fn r_bin_name_update (bn : * mut RBinName , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_tostring (bn : * mut RBinName) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_name_tostring2 (bn : * mut RBinName , type_ : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_name_demangled (bn : * mut RBinName , dname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_filtered (bn : * mut RBinName , fname : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_bin_name_free (bn : * mut RBinName) ; } extern "C" { pub fn r_bin_attr_tostring (attr : u64 , singlechar : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_attr_fromstring (s : * const :: std :: os :: raw :: c_char , compact : bool) -> u64 ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct HtSU_t { _unused : [u8 ; 0] , } pub type HtSU = HtSU_t ; extern "C" { pub fn r_bin_load_filter (bin : * mut RBin , rules : u64) ; } extern "C" { pub fn r_bin_filter_symbols (bf : * mut RBinFile , list : * mut RList) ; } extern "C" { pub fn r_bin_filter_sections (bf : * mut RBinFile , list : * mut RList) ; } extern "C" { pub fn r_bin_filter_name (bf : * mut RBinFile , db : * mut HtSU , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bin_strpurge (bin : * mut RBin , str_ : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_bin_string_filter (bin : * mut RBin , str_ : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_bin_filter_sym (bf : * mut RBinFile , ht : * mut [u64 ; 11usize] , vaddr : u64 , sym : * mut RBinSymbol) -> bool ; } extern "C" { pub fn r_bin_section_new (name : * const :: std :: os :: raw :: c_char) -> * mut RBinSection ; } extern "C" { pub fn r_bin_section_free (bs : * mut RBinSection) ; } pub const r_reg_alias_t_R_REG_ALIAS_PC : r_reg_alias_t = 0 ; pub const r_reg_alias_t_R_REG_ALIAS_SP : r_reg_alias_t = 1 ; pub const r_reg_alias_t_R_REG_ALIAS_GP : r_reg_alias_t = 2 ; pub const r_reg_alias_t_R_REG_ALIAS_RA : r_reg_alias_t = 3 ; pub const r_reg_alias_t_R_REG_ALIAS_SR : r_reg_alias_t = 4 ; pub const r_reg_alias_t_R_REG_ALIAS_BP : r_reg_alias_t = 5 ; pub const r_reg_alias_t_R_REG_ALIAS_LR : r_reg_alias_t = 6 ; pub const r_reg_alias_t_R_REG_ALIAS_RS : r_reg_alias_t = 7 ; pub const r_reg_alias_t_R_REG_ALIAS_A0 : r_reg_alias_t = 8 ; pub const r_reg_alias_t_R_REG_ALIAS_A1 : r_reg_alias_t = 9 ; pub const r_reg_alias_t_R_REG_ALIAS_A2 : r_reg_alias_t = 10 ; pub const r_reg_alias_t_R_REG_ALIAS_A3 : r_reg_alias_t = 11 ; pub const r_reg_alias_t_R_REG_ALIAS_A4 : r_reg_alias_t = 12 ; pub const r_reg_alias_t_R_REG_ALIAS_A5 : r_reg_alias_t = 13 ; pub const r_reg_alias_t_R_REG_ALIAS_A6 : r_reg_alias_t = 14 ; pub const r_reg_alias_t_R_REG_ALIAS_A7 : r_reg_alias_t = 15 ; pub const r_reg_alias_t_R_REG_ALIAS_A8 : r_reg_alias_t = 16 ; pub const r_reg_alias_t_R_REG_ALIAS_A9 : r_reg_alias_t = 17 ; pub const r_reg_alias_t_R_REG_ALIAS_R0 : r_reg_alias_t = 18 ; pub const r_reg_alias_t_R_REG_ALIAS_R1 : r_reg_alias_t = 19 ; pub const r_reg_alias_t_R_REG_ALIAS_R2 : r_reg_alias_t = 20 ; pub const r_reg_alias_t_R_REG_ALIAS_R3 : r_reg_alias_t = 21 ; pub const r_reg_alias_t_R_REG_ALIAS_F0 : r_reg_alias_t = 22 ; pub const r_reg_alias_t_R_REG_ALIAS_F1 : r_reg_alias_t = 23 ; pub const r_reg_alias_t_R_REG_ALIAS_F2 : r_reg_alias_t = 24 ; pub const r_reg_alias_t_R_REG_ALIAS_F3 : r_reg_alias_t = 25 ; pub const r_reg_alias_t_R_REG_ALIAS_ZF : r_reg_alias_t = 26 ; pub const r_reg_alias_t_R_REG_ALIAS_SF : r_reg_alias_t = 27 ; pub const r_reg_alias_t_R_REG_ALIAS_CF : r_reg_alias_t = 28 ; pub const r_reg_alias_t_R_REG_ALIAS_OF : r_reg_alias_t = 29 ; pub const r_reg_alias_t_R_REG_ALIAS_TR : r_reg_alias_t = 30 ; pub const r_reg_alias_t_R_REG_ALIAS_SN : r_reg_alias_t = 31 ; pub const r_reg_alias_t_R_REG_ALIAS_LAST : r_reg_alias_t = 32 ; pub type r_reg_alias_t = :: std :: os :: raw :: c_uint ; pub use self :: r_reg_alias_t as RRegAlias ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub offset : :: std :: os :: raw :: c_int , pub packed_size : :: std :: os :: raw :: c_int , pub is_float : bool , pub flags : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub index : :: std :: os :: raw :: c_int , pub arena : :: std :: os :: raw :: c_int , pub ro : bool , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_reg_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_reg_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . packed_size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (packed_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_float) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (is_float))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . index) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ro) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (ro))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_reg_item_t) , "::" , stringify ! (free))) ; } impl Default for r_reg_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegItem = r_reg_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_arena_t { pub bytes : * mut u8 , pub size : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_reg_arena_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_arena_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_arena_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_reg_arena_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_arena_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_arena_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_arena_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_arena_t) , "::" , stringify ! (size))) ; } impl Default for r_reg_arena_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegArena = r_reg_arena_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_set_t { pub arena : * mut RRegArena , pub pool : * mut RList , pub regs : * mut RList , pub ht_regs : * mut [u64 ; 11usize] , pub cur : * mut RListIter , pub maskregstype : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_reg_set_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_set_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_set_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_reg_set_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_set_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_set_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pool) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (pool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_regs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (ht_regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maskregstype) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_reg_set_t) , "::" , stringify ! (maskregstype))) ; } impl Default for r_reg_set_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RRegSet = r_reg_set_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_reg_t { pub profile : * mut :: std :: os :: raw :: c_char , pub reg_profile_cmt : * mut :: std :: os :: raw :: c_char , pub reg_profile_str : * mut :: std :: os :: raw :: c_char , pub alias : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub regset : [RRegSet ; 10usize] , pub allregs : * mut RList , pub roregs : * mut :: std :: os :: raw :: c_char , pub hasbits : RSysBits , pub iters : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub bits_default : :: std :: os :: raw :: c_int , pub endian : u32 , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_reg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_t > () , 816usize , concat ! ("Size of: " , stringify ! (r_reg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_reg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . profile) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile_cmt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (reg_profile_cmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile_str) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (reg_profile_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regset) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (regset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allregs) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (allregs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . roregs) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (roregs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hasbits) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (hasbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iters) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (iters))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits_default) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (bits_default))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 796usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_reg_t) , "::" , stringify ! (free))) ; } impl Default for r_reg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RReg = r_reg_t ; extern "C" { pub fn r_reg_hasbits_check (reg : * mut RReg , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_hasbits_use (reg : * mut RReg , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_hasbits_clear (reg : * mut RReg) ; } extern "C" { pub fn r_reg_clone (reg : * mut RReg) -> * mut RReg ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_reg_flags_t { pub s : bool , pub z : bool , pub a : bool , pub c : bool , pub o : bool , pub p : bool , } # [test] fn bindgen_test_layout_r_reg_flags_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_reg_flags_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_reg_flags_t > () , 6usize , concat ! ("Size of: " , stringify ! (r_reg_flags_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_reg_flags_t > () , 1usize , concat ! ("Alignment of " , stringify ! (r_reg_flags_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . s) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (s))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . z) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (z))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . a) as usize - ptr as usize } , 2usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (a))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 3usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . o) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (o))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 5usize , concat ! ("Offset of field: " , stringify ! (r_reg_flags_t) , "::" , stringify ! (p))) ; } pub type RRegFlags = r_reg_flags_t ; extern "C" { pub fn r_reg_free_internal (reg : * mut RReg , init : bool) ; } extern "C" { pub fn r_reg_reindex (reg : * mut RReg) ; } extern "C" { pub fn r_reg_item_free (item : * mut RRegItem) ; } extern "C" { pub fn r_reg_free (reg : * mut RReg) ; } extern "C" { pub fn r_reg_new () -> * mut RReg ; } extern "C" { pub fn r_reg_init (reg : * mut RReg) -> * mut RReg ; } extern "C" { pub fn r_reg_alias_setname (reg : * mut RReg , alias : RRegAlias , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_alias_tostring (alias : RRegAlias) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_alias_getname (reg : * mut RReg , alias : RRegAlias) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_alias_fromstring (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_set_profile_string (reg : * mut RReg , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_profile_to_cc (reg : * mut RReg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_set_profile (reg : * mut RReg , profile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_parse_gdb_profile (profile : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_ro_reset (reg : * mut RReg , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_regset_get (r : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> * mut RRegSet ; } extern "C" { pub fn r_reg_getv (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_reg_setv (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_reg_32_to_64 (reg : * mut RReg , rreg32 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_64_to_32 (reg : * mut RReg , rreg64 : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_get (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_get_list (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_reg_get_at (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , regsize : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_next_diff (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , buflen : :: std :: os :: raw :: c_int , prev_ri : * mut RRegItem , regsize : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_index_get (reg : * mut RReg , idx : :: std :: os :: raw :: c_int) -> * mut RRegItem ; } extern "C" { pub fn r_reg_type_by_name (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_type_tostring (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_cond (r : * mut RReg , type_ : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_cond_get (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> * mut RRegItem ; } extern "C" { pub fn r_reg_cond_apply (r : * mut RReg , f : * mut RRegFlags) ; } extern "C" { pub fn r_reg_cond_set (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , val : bool) -> bool ; } extern "C" { pub fn r_reg_cond_get_value (r : * mut RReg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_reg_cond_bits_set (r : * mut RReg , type_ : :: std :: os :: raw :: c_int , f : * mut RRegFlags , v : bool) -> bool ; } extern "C" { pub fn r_reg_cond_bits (r : * mut RReg , type_ : :: std :: os :: raw :: c_int , f : * mut RRegFlags) -> bool ; } extern "C" { pub fn r_reg_cond_retrieve (r : * mut RReg , arg1 : * mut RRegFlags) -> * mut RRegFlags ; } extern "C" { pub fn r_reg_get_value (reg : * mut RReg , item : * mut RRegItem) -> u64 ; } extern "C" { pub fn r_reg_get_value_big (reg : * mut RReg , item : * mut RRegItem , val : * mut utX) -> u64 ; } extern "C" { pub fn r_reg_get_value_by_role (reg : * mut RReg , alias : RRegAlias) -> u64 ; } extern "C" { pub fn r_reg_set_value (reg : * mut RReg , item : * mut RRegItem , value : u64) -> bool ; } extern "C" { pub fn r_reg_set_value_by_role (reg : * mut RReg , alias : RRegAlias , value : u64) -> bool ; } extern "C" { pub fn r_reg_get_float (reg : * mut RReg , item : * mut RRegItem) -> f32 ; } extern "C" { pub fn r_reg_set_float (reg : * mut RReg , item : * mut RRegItem , value : f32) -> bool ; } extern "C" { pub fn r_reg_get_double (reg : * mut RReg , item : * mut RRegItem) -> f64 ; } extern "C" { pub fn r_reg_set_double (reg : * mut RReg , item : * mut RRegItem , value : f64) -> bool ; } extern "C" { pub fn r_reg_get_longdouble (reg : * mut RReg , item : * mut RRegItem) -> u128 ; } extern "C" { pub fn r_reg_set_longdouble (reg : * mut RReg , item : * mut RRegItem , value : u128) -> bool ; } extern "C" { pub fn r_reg_get_bvalue (reg : * mut RReg , item : * mut RRegItem) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_set_bvalue (reg : * mut RReg , item : * mut RRegItem , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_reg_set_pack (reg : * mut RReg , item : * mut RRegItem , packidx : :: std :: os :: raw :: c_int , packbits : :: std :: os :: raw :: c_int , val : u64) -> bool ; } extern "C" { pub fn r_reg_get_pack (reg : * mut RReg , item : * mut RRegItem , packidx : :: std :: os :: raw :: c_int , packbits : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_reg_default_bits (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_default_endian (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_get_bytes (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , size : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_reg_set_bytes (reg : * mut RReg , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_read_regs (reg : * mut RReg , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_reg_arena_set_bytes (reg : * mut RReg , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_new (size : :: std :: os :: raw :: c_int) -> * mut RRegArena ; } extern "C" { pub fn r_reg_arena_clone (a : * mut RRegArena) -> * mut RRegArena ; } extern "C" { pub fn r_reg_arena_free (ra : * mut RRegArena) ; } extern "C" { pub fn r_reg_fit_arena (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_swap (reg : * mut RReg , copy : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_reg_arena_push (reg : * mut RReg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_pop (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_zero (reg : * mut RReg) ; } extern "C" { pub fn r_reg_arena_peek (reg : * mut RReg , len : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_reg_arena_poke (reg : * mut RReg , buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_reg_arena_dup (reg : * mut RReg , source : * const u8) -> * mut u8 ; } extern "C" { pub fn r_reg_cond_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_reg_cond_from_string (str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_reg_arena_shrink (reg : * mut RReg) ; } pub const RArchValueType_R_ANAL_VAL_REG : RArchValueType = 0 ; pub const RArchValueType_R_ANAL_VAL_MEM : RArchValueType = 1 ; pub const RArchValueType_R_ANAL_VAL_IMM : RArchValueType = 2 ; pub type RArchValueType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_value_t { pub type_ : RArchValueType , pub access : :: std :: os :: raw :: c_int , pub absolute : bool , pub memref : :: std :: os :: raw :: c_int , pub base : u64 , pub delta : i64 , pub imm : i64 , pub mul : :: std :: os :: raw :: c_int , pub seg : * const :: std :: os :: raw :: c_char , pub reg : * const :: std :: os :: raw :: c_char , pub regdelta : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_arch_value_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_value_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_value_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_arch_value_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_value_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_value_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . access) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . absolute) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (absolute))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memref) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (memref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (imm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mul) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (mul))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seg) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (seg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regdelta) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_value_t) , "::" , stringify ! (regdelta))) ; } impl Default for r_arch_value_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchValue = r_arch_value_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_hint_t { pub addr : u64 , pub ptr : u64 , pub val : u64 , pub jump : u64 , pub fail : u64 , pub ret : u64 , pub arch : * mut :: std :: os :: raw :: c_char , pub opcode : * mut :: std :: os :: raw :: c_char , pub syntax : * mut :: std :: os :: raw :: c_char , pub esil : * mut :: std :: os :: raw :: c_char , pub offset : * mut :: std :: os :: raw :: c_char , pub type_ : u32 , pub size : u64 , pub bits : :: std :: os :: raw :: c_int , pub new_bits : :: std :: os :: raw :: c_int , pub immbase : :: std :: os :: raw :: c_int , pub high : bool , pub nword : :: std :: os :: raw :: c_int , pub stackframe : u64 , } # [test] fn bindgen_test_layout_r_anal_hint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_hint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_hint_t > () , 136usize , concat ! ("Size of: " , stringify ! (r_anal_hint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_hint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_hint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ret) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (ret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opcode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (opcode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (syntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . new_bits) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (new_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . immbase) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (immbase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . high) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (high))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nword) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (nword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackframe) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_t) , "::" , stringify ! (stackframe))) ; } impl Default for r_anal_hint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalHint = r_anal_hint_t ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_COND : RAnalOpPrefix = 1 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_REP : RAnalOpPrefix = 2 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_REPNE : RAnalOpPrefix = 4 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_LOCK : RAnalOpPrefix = 8 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_LIKELY : RAnalOpPrefix = 16 ; pub const RAnalOpPrefix_R_ANAL_OP_PREFIX_UNLIKELY : RAnalOpPrefix = 32 ; pub type RAnalOpPrefix = :: std :: os :: raw :: c_uint ; pub const RAnalStackOp_R_ANAL_STACK_NULL : RAnalStackOp = 0 ; pub const RAnalStackOp_R_ANAL_STACK_NOP : RAnalStackOp = 1 ; pub const RAnalStackOp_R_ANAL_STACK_INC : RAnalStackOp = 2 ; pub const RAnalStackOp_R_ANAL_STACK_GET : RAnalStackOp = 3 ; pub const RAnalStackOp_R_ANAL_STACK_SET : RAnalStackOp = 4 ; pub const RAnalStackOp_R_ANAL_STACK_RESET : RAnalStackOp = 5 ; pub const RAnalStackOp_R_ANAL_STACK_ALIGN : RAnalStackOp = 6 ; pub type RAnalStackOp = :: std :: os :: raw :: c_uint ; pub const RAnalOpDirection_R_ANAL_OP_DIR_READ : RAnalOpDirection = 1 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_WRITE : RAnalOpDirection = 2 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_EXEC : RAnalOpDirection = 4 ; pub const RAnalOpDirection_R_ANAL_OP_DIR_REF : RAnalOpDirection = 8 ; pub type RAnalOpDirection = :: std :: os :: raw :: c_uint ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_UNKNOWN : RAnalOpFamily = - 1 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_CPU : RAnalOpFamily = 0 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_FPU : RAnalOpFamily = 1 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_VEC : RAnalOpFamily = 2 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_PRIV : RAnalOpFamily = 3 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_CRYPTO : RAnalOpFamily = 4 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_THREAD : RAnalOpFamily = 5 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_VIRT : RAnalOpFamily = 6 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_SECURITY : RAnalOpFamily = 7 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_IO : RAnalOpFamily = 8 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_SIMD : RAnalOpFamily = 9 ; pub const RAnalOpFamily_R_ANAL_OP_FAMILY_LAST : RAnalOpFamily = 10 ; pub type RAnalOpFamily = :: std :: os :: raw :: c_int ; pub const RAnalCondType_R_ANAL_CONDTYPE_AL : RAnalCondType = 0 ; pub const RAnalCondType_R_ANAL_CONDTYPE_EQ : RAnalCondType = 1 ; pub const RAnalCondType_R_ANAL_CONDTYPE_NE : RAnalCondType = 2 ; pub const RAnalCondType_R_ANAL_CONDTYPE_GE : RAnalCondType = 3 ; pub const RAnalCondType_R_ANAL_CONDTYPE_GT : RAnalCondType = 4 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LE : RAnalCondType = 5 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LT : RAnalCondType = 6 ; pub const RAnalCondType_R_ANAL_CONDTYPE_NV : RAnalCondType = 7 ; pub const RAnalCondType_R_ANAL_CONDTYPE_HS : RAnalCondType = 8 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LO : RAnalCondType = 9 ; pub const RAnalCondType_R_ANAL_CONDTYPE_MI : RAnalCondType = 10 ; pub const RAnalCondType_R_ANAL_CONDTYPE_PL : RAnalCondType = 11 ; pub const RAnalCondType_R_ANAL_CONDTYPE_VS : RAnalCondType = 12 ; pub const RAnalCondType_R_ANAL_CONDTYPE_VC : RAnalCondType = 13 ; pub const RAnalCondType_R_ANAL_CONDTYPE_HI : RAnalCondType = 14 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LS : RAnalCondType = 15 ; pub const RAnalCondType_R_ANAL_CONDTYPE_LAST : RAnalCondType = 16 ; pub const RAnalCondType_R_ANAL_CONDTYPE_ERR : RAnalCondType = - 1 ; pub type RAnalCondType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_case_op_t { pub addr : u64 , pub jump : u64 , pub value : u64 , } # [test] fn bindgen_test_layout_r_anal_case_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_case_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_case_op_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_case_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_case_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_case_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_case_op_t) , "::" , stringify ! (value))) ; } pub type RAnalCaseOp = r_anal_case_op_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_switch_op_t { pub addr : u64 , pub baddr : u64 , pub daddr : u64 , pub dsize : :: std :: os :: raw :: c_int , pub amount : :: std :: os :: raw :: c_int , pub min_val : u64 , pub def_val : u64 , pub max_val : u64 , pub cases : * mut RList , } # [test] fn bindgen_test_layout_r_anal_switch_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_switch_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_switch_op_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_anal_switch_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_switch_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_switch_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (baddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . daddr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (daddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dsize) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (dsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . amount) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (amount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . min_val) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (min_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . def_val) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (def_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_val) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (max_val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cases) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_switch_op_t) , "::" , stringify ! (cases))) ; } impl Default for r_anal_switch_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalSwitchOp = r_anal_switch_op_t ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_NULL : r_anal_data_type_t = 0 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_ARRAY : r_anal_data_type_t = 1 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_OBJECT : r_anal_data_type_t = 2 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_STRING : r_anal_data_type_t = 3 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_CLASS : r_anal_data_type_t = 4 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_BOOLEAN : r_anal_data_type_t = 5 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT16 : r_anal_data_type_t = 6 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT32 : r_anal_data_type_t = 7 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_INT64 : r_anal_data_type_t = 8 ; pub const r_anal_data_type_t_R_ANAL_DATATYPE_FLOAT : r_anal_data_type_t = 9 ; pub type r_anal_data_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_anal_data_type_t as RAnalDataType ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_op_t { pub mnemonic : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub type_ : u32 , pub prefix : RAnalOpPrefix , pub type2 : u32 , pub stackop : RAnalStackOp , pub cond : RAnalCondType , pub weakbytes : bool , pub bytes : * mut u8 , pub bytes_buf : [u8 ; 64usize] , pub size : :: std :: os :: raw :: c_int , pub tlocal : bool , pub nopcode : :: std :: os :: raw :: c_int , pub cycles : :: std :: os :: raw :: c_int , pub failcycles : :: std :: os :: raw :: c_int , pub family : RAnalOpFamily , pub id : :: std :: os :: raw :: c_int , pub eob : bool , pub sign : bool , pub delay : :: std :: os :: raw :: c_int , pub jump : u64 , pub fail : u64 , pub direction : RAnalOpDirection , pub ptr : i64 , pub val : u64 , pub ptrsize : :: std :: os :: raw :: c_int , pub stackptr : i64 , pub refptr : :: std :: os :: raw :: c_int , pub srcs : RVector , pub dsts : RVector , pub access : * mut RList , pub esil : RStrBuf , pub opex : RStrBuf , pub reg : * const :: std :: os :: raw :: c_char , pub ireg : * const :: std :: os :: raw :: c_char , pub scale : :: std :: os :: raw :: c_int , pub disp : u64 , pub switch_op : * mut RAnalSwitchOp , pub hint : RAnalHint , pub datatype : RAnalDataType , pub vliw : :: std :: os :: raw :: c_int , pub payload : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_op_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_op_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_op_t > () , 640usize , concat ! ("Size of: " , stringify ! (r_anal_op_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_op_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_op_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonic) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (mnemonic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type2) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (type2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackop) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (stackop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . weakbytes) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (weakbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes_buf) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (bytes_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tlocal) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (tlocal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nopcode) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (nopcode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cycles) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (cycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . failcycles) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (failcycles))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . family) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (family))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eob) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (eob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sign) as usize - ptr as usize } , 141usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (sign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (direction))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (val))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptrsize) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ptrsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refptr) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (refptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srcs) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (srcs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dsts) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (dsts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . access) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (access))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opex) as usize - ptr as usize } , 384usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (opex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 448usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ireg) as usize - ptr as usize } , 456usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (ireg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scale) as usize - ptr as usize } , 464usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (scale))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disp) as usize - ptr as usize } , 472usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (disp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_op) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (switch_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datatype) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (datatype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vliw) as usize - ptr as usize } , 628usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (vliw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . payload) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_anal_op_t) , "::" , stringify ! (payload))) ; } impl Default for r_anal_op_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalOp = r_anal_op_t ; extern "C" { pub fn r_anal_op_clone (op : * mut RAnalOp) -> * mut RAnalOp ; } extern "C" { pub fn r_anal_op_free (_op : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_op_nonlinear (t : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_op_init (op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_op_set_bytes (op : * mut RAnalOp , addr : u64 , data : * const u8 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_op_set_mnemonic (op : * mut RAnalOp , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_op_direction_tostring (op : * mut RAnalOp) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_ismemref (t : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_optype_tostring (t : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_optype_index (idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_optype_from_string (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_family_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_family_from_string (f : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_hint (op : * mut RAnalOp , hint : * mut RAnalHint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_switch_op_new (addr : u64 , min_val : u64 , max_val : u64 , def_val : u64) -> * mut RAnalSwitchOp ; } extern "C" { pub fn r_anal_switch_op_free (swop : * mut RAnalSwitchOp) ; } extern "C" { pub fn r_anal_switch_op_add_case (swop : * mut RAnalSwitchOp , addr : u64 , value : u64 , jump : u64) -> * mut RAnalCaseOp ; } extern "C" { pub fn r_anal_value_new () -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_free (value : * mut RArchValue) ; } extern "C" { pub fn r_anal_value_clone (ov : * mut RArchValue) -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_new_from_string (str_ : * const :: std :: os :: raw :: c_char) -> * mut RArchValue ; } extern "C" { pub fn r_anal_value_eval (value : * mut RArchValue) -> i64 ; } extern "C" { pub fn r_anal_value_tostring (value : * mut RArchValue) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_value_type_tostring (value : * mut RArchValue) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct HtUU_t { _unused : [u8 ; 0] , } pub type HtUU = HtUU_t ; pub type ESIL = r_esil_t ; pub type REsilHandlerCB = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , h : u32 , user : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_handler_t { pub cb : REsilHandlerCB , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_handler_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_handler_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_handler_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_esil_handler_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_handler_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_handler_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_handler_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_handler_t) , "::" , stringify ! (user))) ; } impl Default for r_esil_handler_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilHandler = r_esil_handler_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilRegAccess { pub name : * const :: std :: os :: raw :: c_char , pub value : u64 , } # [test] fn bindgen_test_layout_REsilRegAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilRegAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilRegAccess > () , 16usize , concat ! ("Size of: " , stringify ! (REsilRegAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilRegAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilRegAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilRegAccess) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilRegAccess) , "::" , stringify ! (value))) ; } impl Default for REsilRegAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilMemoryAccess { pub data : * mut :: std :: os :: raw :: c_char , pub addr : u64 , } # [test] fn bindgen_test_layout_REsilMemoryAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilMemoryAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilMemoryAccess > () , 16usize , concat ! ("Size of: " , stringify ! (REsilMemoryAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilMemoryAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilMemoryAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilMemoryAccess) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilMemoryAccess) , "::" , stringify ! (addr))) ; } impl Default for REsilMemoryAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Copy , Clone)] pub struct REsilTraceAccess { pub __bindgen_anon_1 : REsilTraceAccess__bindgen_ty_1 , pub is_write : bool , pub is_reg : bool , } # [repr (C)] # [derive (Copy , Clone)] pub union REsilTraceAccess__bindgen_ty_1 { pub reg : REsilRegAccess , pub mem : REsilMemoryAccess , } # [test] fn bindgen_test_layout_REsilTraceAccess__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceAccess__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceAccess__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (REsilTraceAccess__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceAccess__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceAccess__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess__bindgen_ty_1) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess__bindgen_ty_1) , "::" , stringify ! (mem))) ; } impl Default for REsilTraceAccess__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_REsilTraceAccess () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceAccess > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceAccess > () , 24usize , concat ! ("Size of: " , stringify ! (REsilTraceAccess))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceAccess > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceAccess))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_write) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess) , "::" , stringify ! (is_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reg) as usize - ptr as usize } , 17usize , concat ! ("Offset of field: " , stringify ! (REsilTraceAccess) , "::" , stringify ! (is_reg))) ; } impl Default for REsilTraceAccess { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct REsilTraceOp { pub addr : u64 , pub start : u32 , pub end : u32 , } # [test] fn bindgen_test_layout_REsilTraceOp () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceOp > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceOp > () , 16usize , concat ! ("Size of: " , stringify ! (REsilTraceOp))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceOp > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilTraceOp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (REsilTraceOp) , "::" , stringify ! (end))) ; } pub type RVecTraceOp = r_vec_RVecTraceOp_t ; pub type RVecAccess = r_vec_RVecAccess_t ; # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct REsilTraceDB { pub ops : RVecTraceOp , pub accesses : RVecAccess , pub loop_counts : * mut HtUU , } # [test] fn bindgen_test_layout_REsilTraceDB () { const UNINIT : :: std :: mem :: MaybeUninit < REsilTraceDB > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilTraceDB > () , 80usize , concat ! ("Size of: " , stringify ! (REsilTraceDB))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilTraceDB > () , 16usize , concat ! ("Alignment of " , stringify ! (REsilTraceDB))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ops) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accesses) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (accesses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loop_counts) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (REsilTraceDB) , "::" , stringify ! (loop_counts))) ; } impl Default for REsilTraceDB { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_esil_trace_t { pub db : REsilTraceDB , pub idx : :: std :: os :: raw :: c_int , pub end_idx : :: std :: os :: raw :: c_int , pub cur_idx : :: std :: os :: raw :: c_int , pub registers : * mut [u64 ; 11usize] , pub memory : * mut [u64 ; 11usize] , pub arena : [* mut RRegArena ; 10usize] , pub stack_addr : u64 , pub stack_size : u64 , pub stack_data : * mut u8 , } # [test] fn bindgen_test_layout_r_esil_trace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_trace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_trace_t > () , 224usize , concat ! ("Size of: " , stringify ! (r_esil_trace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_trace_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_esil_trace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end_idx) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (end_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_idx) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (cur_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . registers) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (registers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memory) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (memory))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_addr) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_size) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_data) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_esil_trace_t) , "::" , stringify ! (stack_data))) ; } impl Default for r_esil_trace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilTrace = r_esil_trace_t ; pub type REsilHookRegWriteCB = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , val : * mut u64) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_callbacks_t { pub user : * mut :: std :: os :: raw :: c_void , pub hook_command : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , op : * const :: std :: os :: raw :: c_char) -> bool > , pub hook_mem_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub mem_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub hook_mem_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub mem_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub hook_reg_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , res : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool > , pub reg_read : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , res : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool > , pub hook_reg_write : REsilHookRegWriteCB , pub reg_write : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool > , } # [test] fn bindgen_test_layout_r_esil_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_callbacks_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_esil_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_command) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_command))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_mem_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_read) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_mem_write) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_mem_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_write) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (mem_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_reg_read) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hook_reg_write) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (hook_reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_callbacks_t) , "::" , stringify ! (reg_write))) ; } impl Default for r_esil_callbacks_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilCallbacks = r_esil_callbacks_t ; pub type REsilMemSwitch = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , idx : u32) -> bool > ; pub type REsilMemRead = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > ; pub type REsilMemWrite = :: std :: option :: Option < unsafe extern "C" fn (mem : * mut :: std :: os :: raw :: c_void , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_memory_interface_t { pub __bindgen_anon_1 : r_esil_memory_interface_t__bindgen_ty_1 , pub mem_switch : REsilMemSwitch , pub mem_read : REsilMemRead , pub mem_write : REsilMemWrite , } # [repr (C)] # [derive (Copy , Clone)] pub union r_esil_memory_interface_t__bindgen_ty_1 { pub mem : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_memory_interface_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_memory_interface_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_memory_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_memory_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1) , "::" , stringify ! (mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t__bindgen_ty_1) , "::" , stringify ! (user))) ; } impl Default for r_esil_memory_interface_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_esil_memory_interface_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_memory_interface_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_memory_interface_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_memory_interface_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_memory_interface_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_memory_interface_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_switch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_switch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_memory_interface_t) , "::" , stringify ! (mem_write))) ; } impl Default for r_esil_memory_interface_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilMemInterface = r_esil_memory_interface_t ; pub type REsilIsReg = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type REsilRegRead = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char , val : * mut u64) -> bool > ; pub type REsilRegWrite = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool > ; pub type REsilRegSize = :: std :: option :: Option < unsafe extern "C" fn (reg : * mut :: std :: os :: raw :: c_void , name : * const :: std :: os :: raw :: c_char) -> u32 > ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_register_interface_t { pub __bindgen_anon_1 : r_esil_register_interface_t__bindgen_ty_1 , pub is_reg : REsilIsReg , # [doc = " IsReg breaks the REsilReg prefix naming"] pub reg_read : REsilRegRead , pub reg_write : REsilRegWrite , pub reg_size : REsilRegSize , } # [repr (C)] # [derive (Copy , Clone)] pub union r_esil_register_interface_t__bindgen_ty_1 { pub reg : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_esil_register_interface_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_register_interface_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_register_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_register_interface_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_register_interface_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t__bindgen_ty_1) , "::" , stringify ! (user))) ; } impl Default for r_esil_register_interface_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_esil_register_interface_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_register_interface_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_register_interface_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_esil_register_interface_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_register_interface_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_register_interface_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_reg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (is_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_register_interface_t) , "::" , stringify ! (reg_size))) ; } impl Default for r_esil_register_interface_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilRegInterface = r_esil_register_interface_t ; pub const REsilVoyeurType_R_ESIL_VOYEUR_REG_READ : REsilVoyeurType = 0 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_REG_WRITE : REsilVoyeurType = 1 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_MEM_READ : REsilVoyeurType = 2 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_MEM_WRITE : REsilVoyeurType = 3 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_OP : REsilVoyeurType = 4 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_LAST : REsilVoyeurType = 5 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_HIGH_MASK : REsilVoyeurType = 7 ; pub const REsilVoyeurType_R_ESIL_VOYEUR_ERR : REsilVoyeurType = 4294967295 ; pub type REsilVoyeurType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_esil_t { pub anal : * mut r_anal_t , pub stack : * mut * mut :: std :: os :: raw :: c_char , pub addrmask : u64 , pub stacksize : :: std :: os :: raw :: c_int , pub stackptr : :: std :: os :: raw :: c_int , pub skip : u32 , pub nowrite : :: std :: os :: raw :: c_int , pub iotrap : :: std :: os :: raw :: c_int , pub exectrap : :: std :: os :: raw :: c_int , pub parse_stop : :: std :: os :: raw :: c_int , pub parse_goto : :: std :: os :: raw :: c_int , pub parse_goto_count : :: std :: os :: raw :: c_int , pub verbose : :: std :: os :: raw :: c_int , pub flags : u64 , pub addr : u64 , pub stack_addr : u64 , pub stack_size : u32 , pub delay : :: std :: os :: raw :: c_int , pub jump_target : u64 , pub jump_target_set : :: std :: os :: raw :: c_int , pub trap : :: std :: os :: raw :: c_int , pub data_align : :: std :: os :: raw :: c_int , pub trap_code : u32 , pub old : u64 , pub cur : u64 , pub lastsz : u8 , pub ops : * mut [u64 ; 11usize] , pub curplug : * mut r_esil_plugin_t , pub current_opstr : * mut :: std :: os :: raw :: c_char , pub interrupts : * mut SdbMini , pub syscalls : * mut SdbMini , pub intr0 : * mut REsilHandler , pub sysc0 : * mut REsilHandler , pub plugins : * mut RList , pub active_plugins : * mut RList , pub stats : * mut Sdb , pub trace : * mut REsilTrace , pub reg_if : REsilRegInterface , pub mem_if : REsilMemInterface , pub voyeur : [RIDStorage ; 5usize] , pub cb : REsilCallbacks , pub ocb : REsilCallbacks , pub ocb_set : bool , pub cmd_step : * mut :: std :: os :: raw :: c_char , pub cmd_step_out : * mut :: std :: os :: raw :: c_char , pub cmd_intr : * mut :: std :: os :: raw :: c_char , pub cmd_trap : * mut :: std :: os :: raw :: c_char , pub cmd_mdev : * mut :: std :: os :: raw :: c_char , pub cmd_todo : * mut :: std :: os :: raw :: c_char , pub cmd_ioer : * mut :: std :: os :: raw :: c_char , pub mdev_range : * mut :: std :: os :: raw :: c_char , pub cmd : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut ESIL , name : * const :: std :: os :: raw :: c_char , a0 : u64 , a1 : u64) -> bool > , pub user : * mut :: std :: os :: raw :: c_void , pub stack_fd : :: std :: os :: raw :: c_int , pub in_cmd_step : bool , } # [test] fn bindgen_test_layout_r_esil_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_t > () , 680usize , concat ! ("Size of: " , stringify ! (r_esil_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrmask) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (addrmask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stacksize) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stacksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skip) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (skip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nowrite) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (nowrite))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iotrap) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (iotrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exectrap) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (exectrap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_stop) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_goto) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_goto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse_goto_count) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (parse_goto_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_addr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump_target) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (jump_target))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump_target_set) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (jump_target_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 108usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_align) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (data_align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap_code) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trap_code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastsz) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (lastsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ops) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curplug) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (curplug))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_opstr) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (current_opstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . interrupts) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (interrupts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscalls) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (syscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . intr0) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (intr0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysc0) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (sysc0))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . active_plugins) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (active_plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stats) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_if) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (reg_if))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mem_if) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (mem_if))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . voyeur) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (voyeur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocb) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ocb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocb_set) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (ocb_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step_out) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_step_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_intr) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_intr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_trap) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_mdev) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_mdev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_todo) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_ioer) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd_ioer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mdev_range) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (mdev_range))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack_fd) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (stack_fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_cmd_step) as usize - ptr as usize } , 676usize , concat ! ("Offset of field: " , stringify ! (r_esil_t) , "::" , stringify ! (in_cmd_step))) ; } impl Default for r_esil_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsil = r_esil_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_ref_char_t { pub str_ : * mut :: std :: os :: raw :: c_char , pub cols : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_anal_ref_char_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_ref_char_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_ref_char_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_ref_char_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_ref_char_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_ref_char_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_char_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_char_t) , "::" , stringify ! (cols))) ; } impl Default for r_anal_ref_char_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRefStr = r_anal_ref_char_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub init : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil) -> * mut :: std :: os :: raw :: c_void > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil , user : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_esil_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_esil_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_esil_plugin_t) , "::" , stringify ! (fini))) ; } impl Default for r_esil_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilPlugin = r_esil_plugin_t ; extern "C" { pub fn r_esil_new (stacksize : :: std :: os :: raw :: c_int , iotrap : :: std :: os :: raw :: c_int , addrsize : :: std :: os :: raw :: c_uint) -> * mut REsil ; } extern "C" { pub fn r_esil_init (esil : * mut REsil , stacksize : :: std :: os :: raw :: c_int , iotrap : bool , addrsize : u32 , reg_if : * mut REsilRegInterface , mem_if : * mut REsilMemInterface) -> bool ; } extern "C" { pub fn r_esil_new_ex (stacksize : :: std :: os :: raw :: c_int , iotrap : bool , addrsize : u32 , reg_if : * mut REsilRegInterface , mem_if : * mut REsilMemInterface) -> * mut REsil ; } extern "C" { pub fn r_esil_new_simple (addrsize : u32 , reg : * mut :: std :: os :: raw :: c_void , iob : * mut :: std :: os :: raw :: c_void) -> * mut REsil ; } extern "C" { pub fn r_esil_add_voyeur (esil : * mut REsil , user : * mut :: std :: os :: raw :: c_void , vfn : * mut :: std :: os :: raw :: c_void , vt : REsilVoyeurType) -> u32 ; } extern "C" { pub fn r_esil_del_voyeur (esil : * mut REsil , vid : u32) ; } extern "C" { pub fn r_esil_reset (esil : * mut REsil) ; } extern "C" { pub fn r_esil_set_pc (esil : * mut REsil , addr : u64) ; } extern "C" { pub fn r_esil_setup (esil : * mut REsil , anal : * mut r_anal_t , romem : bool , stats : bool , nonull : bool) -> bool ; } extern "C" { pub fn r_esil_setup_ops (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_fini (esil : * mut REsil) ; } extern "C" { pub fn r_esil_free (esil : * mut REsil) ; } extern "C" { pub fn r_esil_runword (esil : * mut REsil , word : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_parse (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_dumpstack (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_mem_read (esil : * mut REsil , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_read_silent (esil : * mut REsil , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_write (esil : * mut REsil , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_mem_write_silent (esil : * mut REsil , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_reg_read (esil : * mut REsil , regname : * const :: std :: os :: raw :: c_char , val : * mut u64 , size : * mut u32) -> bool ; } extern "C" { pub fn r_esil_reg_read_silent (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char , val : * mut u64 , size : * mut u32) -> bool ; } extern "C" { pub fn r_esil_reg_write (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_esil_reg_write_silent (esil : * mut REsil , dst : * const :: std :: os :: raw :: c_char , val : u64) -> bool ; } extern "C" { pub fn r_esil_pushnum (esil : * mut REsil , num : u64) -> bool ; } extern "C" { pub fn r_esil_push (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_pop (esil : * mut REsil) -> * mut :: std :: os :: raw :: c_char ; } pub type REsilOpCb = :: std :: option :: Option < unsafe extern "C" fn (esil : * mut REsil) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_operation_t { pub code : REsilOpCb , pub push : u32 , pub pop : u32 , pub type_ : u32 , pub info : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_esil_operation_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_operation_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_operation_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_operation_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_operation_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_operation_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (push))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (pop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_esil_operation_t) , "::" , stringify ! (info))) ; } impl Default for r_esil_operation_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilOp = r_esil_operation_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilC { pub esil : * mut REsil , pub sb : * mut RStrBuf , pub anal : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_REsilC () { const UNINIT : :: std :: mem :: MaybeUninit < REsilC > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilC > () , 24usize , concat ! ("Size of: " , stringify ! (REsilC))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilC > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilC))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (sb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilC) , "::" , stringify ! (anal))) ; } impl Default for REsilC { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_esil_toc_new (anal : * mut r_anal_t , bits : :: std :: os :: raw :: c_int) -> * mut REsilC ; } extern "C" { pub fn r_esil_toc_free (ec : * mut REsilC) ; } extern "C" { pub fn r_esil_toc (esil : * mut REsilC , expr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_opstr (arg1 : * mut REsil , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_set_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char , code : REsilOpCb , push : u32 , pop : u32 , type_ : u32 , info : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_get_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char) -> * mut REsilOp ; } extern "C" { pub fn r_esil_del_op (esil : * mut REsil , op : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_esil_stack_free (esil : * mut REsil) ; } extern "C" { pub fn r_esil_condition (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm_type (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char , num : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_get_parm_size (esil : * mut REsil , str_ : * const :: std :: os :: raw :: c_char , num : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_esil_handlers_init (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_set_interrupt (esil : * mut REsil , intr_num : u32 , cb : REsilHandlerCB , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_esil_get_interrupt (esil : * mut REsil , intr_num : u32) -> REsilHandlerCB ; } extern "C" { pub fn r_esil_del_interrupt (esil : * mut REsil , intr_num : u32) ; } extern "C" { pub fn r_esil_set_syscall (esil : * mut REsil , sysc_num : u32 , cb : REsilHandlerCB , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_esil_get_syscall (esil : * mut REsil , sysc_num : u32) -> REsilHandlerCB ; } extern "C" { pub fn r_esil_del_syscall (esil : * mut REsil , sysc_num : u32) ; } extern "C" { pub fn r_esil_fire_interrupt (esil : * mut REsil , intr_num : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_do_syscall (esil : * mut REsil , sysc_num : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_handlers_fini (esil : * mut REsil) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct REsilCompiler { pub esil : * mut REsil , pub str_ : * mut :: std :: os :: raw :: c_char , pub priv_ : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_REsilCompiler () { const UNINIT : :: std :: mem :: MaybeUninit < REsilCompiler > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < REsilCompiler > () , 24usize , concat ! ("Size of: " , stringify ! (REsilCompiler))) ; assert_eq ! (:: std :: mem :: align_of :: < REsilCompiler > () , 8usize , concat ! ("Alignment of " , stringify ! (REsilCompiler))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (REsilCompiler) , "::" , stringify ! (priv_))) ; } impl Default for REsilCompiler { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_esil_compiler_new () -> * mut REsilCompiler ; } extern "C" { pub fn r_esil_compiler_reset (ec : * mut REsilCompiler) ; } extern "C" { pub fn r_esil_compiler_free (ec : * mut REsilCompiler) ; } extern "C" { pub fn r_esil_compiler_tostring (ec : * mut REsilCompiler) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_compiler_parse (ec : * mut REsilCompiler , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_compiler_unparse (ec : * mut REsilCompiler , expr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_esil_compiler_use (ec : * mut REsilCompiler , esil : * mut REsil) ; } extern "C" { pub fn r_esil_plugins_init (esil : * mut REsil) -> bool ; } extern "C" { pub fn r_esil_plugins_fini (esil : * mut REsil) ; } extern "C" { pub fn r_esil_plugin_add (esil : * mut REsil , plugin : * mut REsilPlugin) -> bool ; } extern "C" { pub fn r_esil_plugin_del (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_esil_plugin_remove (esil : * mut REsil , plugin : * mut REsilPlugin) -> bool ; } extern "C" { pub fn r_esil_plugin_activate (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_esil_plugin_deactivate (esil : * mut REsil , name : * const :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_esil_stats_t { pub db : * mut Sdb , pub vid : [u32 ; 5usize] , } # [test] fn bindgen_test_layout_r_esil_stats_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_esil_stats_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_esil_stats_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_esil_stats_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_esil_stats_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_esil_stats_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_esil_stats_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vid) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_esil_stats_t) , "::" , stringify ! (vid))) ; } impl Default for r_esil_stats_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REsilStats = r_esil_stats_t ; extern "C" { pub fn r_esil_mem_ro (esil : * mut REsil , mem_readonly : bool) ; } extern "C" { pub fn r_esil_stats (esil : * mut REsil , stats : * mut REsilStats , enable : bool) ; } extern "C" { pub fn r_esil_trace_new (esil : * mut REsil) -> * mut REsilTrace ; } extern "C" { pub fn r_esil_trace_free (trace : * mut REsilTrace) ; } extern "C" { pub fn r_esil_trace_op (esil : * mut REsil , op : * mut r_anal_op_t) ; } extern "C" { pub fn r_esil_trace_list (esil : * mut REsil , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_show (esil : * mut REsil , idx : :: std :: os :: raw :: c_int , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_restore (esil : * mut REsil , idx : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_esil_trace_loopcount (etrace : * mut REsilTrace , addr : u64) -> u64 ; } extern "C" { pub fn r_esil_trace_loopcount_increment (etrace : * mut REsilTrace , addr : u64) ; } extern "C" { pub fn r_esil_reg_read_nocallback (esil : * mut REsil , regname : * const :: std :: os :: raw :: c_char , num : * mut u64 , size : * mut :: std :: os :: raw :: c_int) -> bool ; } # [repr (C)] # [derive (Copy , Clone)] pub struct r_arch_config_t { pub decoder : * mut :: std :: os :: raw :: c_char , pub arch : [:: std :: os :: raw :: c_char ; 16usize] , pub cpu : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub __bindgen_anon_1 : r_arch_config_t__bindgen_ty_1 , pub syntax : :: std :: os :: raw :: c_int , pub codealign : :: std :: os :: raw :: c_int , pub dataalign : :: std :: os :: raw :: c_int , pub addrbytes : :: std :: os :: raw :: c_int , pub segbas : :: std :: os :: raw :: c_int , pub seggrn : :: std :: os :: raw :: c_int , pub invhex : :: std :: os :: raw :: c_int , pub bitshift : :: std :: os :: raw :: c_int , pub abi : * mut :: std :: os :: raw :: c_char , pub gp : u64 , pub cfloat_profile : RCFloatProfile , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [repr (C)] # [derive (Copy , Clone)] pub union r_arch_config_t__bindgen_ty_1 { pub big_endian : :: std :: os :: raw :: c_int , pub endian : u32 , } # [test] fn bindgen_test_layout_r_arch_config_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_config_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_config_t__bindgen_ty_1 > () , 4usize , concat ! ("Size of: " , stringify ! (r_arch_config_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_config_t__bindgen_ty_1 > () , 4usize , concat ! ("Alignment of " , stringify ! (r_arch_config_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . big_endian) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t__bindgen_ty_1) , "::" , stringify ! (big_endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t__bindgen_ty_1) , "::" , stringify ! (endian))) ; } impl Default for r_arch_config_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_arch_config_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_config_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_config_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_arch_config_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_config_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_config_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decoder) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (decoder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (syntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codealign) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (codealign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dataalign) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (dataalign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrbytes) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (addrbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . segbas) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (segbas))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seggrn) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (seggrn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . invhex) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (invhex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitshift) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (bitshift))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfloat_profile) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (cfloat_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 116usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_config_t) , "::" , stringify ! (free))) ; } impl Default for r_arch_config_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchConfig = r_arch_config_t ; pub const RAnalOpMask_R_ARCH_OP_MASK_BASIC : RAnalOpMask = 0 ; pub const RAnalOpMask_R_ARCH_OP_MASK_ESIL : RAnalOpMask = 1 ; pub const RAnalOpMask_R_ARCH_OP_MASK_VAL : RAnalOpMask = 2 ; pub const RAnalOpMask_R_ARCH_OP_MASK_HINT : RAnalOpMask = 4 ; pub const RAnalOpMask_R_ARCH_OP_MASK_OPEX : RAnalOpMask = 8 ; pub const RAnalOpMask_R_ARCH_OP_MASK_DISASM : RAnalOpMask = 16 ; pub const RAnalOpMask_R_ARCH_OP_MASK_ALL : RAnalOpMask = 31 ; pub type RAnalOpMask = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_t { pub plugins : * mut RList , pub binb : RBinBind , pub esil : * mut r_esil_t , pub num : * mut RNum , pub session : * mut r_arch_session_t , pub cfg : * mut RArchConfig , pub platform : * mut :: std :: os :: raw :: c_char , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_t > () , 136usize , concat ! ("Size of: " , stringify ! (r_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binb) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (binb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (session))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (cfg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . platform) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (platform))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_arch_t) , "::" , stringify ! (user))) ; } impl Default for r_arch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArch = r_arch_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_session_t { pub name : * mut :: std :: os :: raw :: c_char , pub arch : * mut r_arch_t , pub plugin : * mut r_arch_plugin_t , pub encoder : * mut r_arch_session_t , pub config : * mut RArchConfig , pub data : * mut :: std :: os :: raw :: c_void , pub user : * mut :: std :: os :: raw :: c_void , pub refcount : RRef , pub free : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut :: std :: os :: raw :: c_void) > , } # [test] fn bindgen_test_layout_r_arch_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_session_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_arch_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encoder) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (encoder))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refcount) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (refcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . free) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_session_t) , "::" , stringify ! (free))) ; } impl Default for r_arch_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchSession = r_arch_session_t ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_INIT : RArchEsilAction = 0 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_MAPS : RArchEsilAction = 1 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_RESET : RArchEsilAction = 2 ; pub const RArchEsilAction_R_ARCH_ESIL_ACTION_FINI : RArchEsilAction = 3 ; pub type RArchEsilAction = :: std :: os :: raw :: c_uint ; pub type RArchDecodeMask = u32 ; pub type RArchEncodeMask = u32 ; pub type RArchModifyMask = u32 ; pub type RArchPluginInfoCallback = :: std :: option :: Option < unsafe extern "C" fn (cfg : * mut RArchSession , query : u32) -> :: std :: os :: raw :: c_int > ; pub type RArchPluginRegistersCallback = :: std :: option :: Option < unsafe extern "C" fn (ai : * mut RArchSession) -> * mut :: std :: os :: raw :: c_char > ; pub type RArchPluginMnemonicsCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RArchPluginDecodeCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchDecodeMask) -> bool > ; pub type RArchPluginEncodeCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchEncodeMask) -> bool > ; pub type RArchPluginModifyCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , op : * mut r_anal_op_t , mask : RArchModifyMask) -> bool > ; pub type RArchPluginPreludesCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> * mut RList > ; pub type RArchPluginInitCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> bool > ; pub type RArchPluginFiniCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession) -> bool > ; pub type RArchPluginEsilCallback = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RArchSession , action : RArchEsilAction) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_arch_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub cpus : * mut :: std :: os :: raw :: c_char , pub endian : u32 , pub bits : RSysBits , pub addr_bits : RSysBits , pub init : RArchPluginInitCallback , pub fini : RArchPluginFiniCallback , pub info : RArchPluginInfoCallback , pub regs : RArchPluginRegistersCallback , pub encode : RArchPluginEncodeCallback , pub decode : RArchPluginDecodeCallback , pub patch : RArchPluginModifyCallback , pub mnemonics : RArchPluginMnemonicsCallback , pub preludes : RArchPluginPreludesCallback , pub esilcb : RArchPluginEsilCallback , } # [test] fn bindgen_test_layout_r_arch_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_arch_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_arch_plugin_t > () , 184usize , concat ! ("Size of: " , stringify ! (r_arch_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_arch_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_arch_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpus) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (cpus))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_bits) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (addr_bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (encode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (decode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (patch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonics) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (mnemonics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . preludes) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (preludes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esilcb) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_arch_plugin_t) , "::" , stringify ! (esilcb))) ; } impl Default for r_arch_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RArchPlugin = r_arch_plugin_t ; extern "C" { pub fn r_arch_platform_unset (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_platform_set (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_platform_list (arch : * mut RArch) ; } extern "C" { pub fn r_arch_load_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_use_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_unload_decoder (arch : * mut RArch , dname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_info (arch : * mut RArch , query : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_decode (a : * mut RArch , op : * mut RAnalOp , mask : RArchDecodeMask) -> bool ; } extern "C" { pub fn r_arch_encode (a : * mut RArch , op : * mut RAnalOp , mask : RArchEncodeMask) -> bool ; } extern "C" { pub fn r_arch_esilcb (a : * mut RArch , action : RArchEsilAction) -> bool ; } extern "C" { pub fn r_arch_session (arch : * mut RArch , cfg : * mut RArchConfig , ap : * mut RArchPlugin) -> * mut RArchSession ; } extern "C" { pub fn r_arch_session_decode (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchDecodeMask) -> bool ; } extern "C" { pub fn r_arch_session_encode (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchEncodeMask) -> bool ; } extern "C" { pub fn r_arch_session_patch (as_ : * mut RArchSession , op : * mut RAnalOp , mask : RArchModifyMask) -> bool ; } extern "C" { pub fn r_arch_session_info (as_ : * mut RArchSession , q : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_session_preludes (as_ : * mut RArchSession) -> * mut RList ; } extern "C" { pub fn r_arch_new () -> * mut RArch ; } extern "C" { pub fn r_arch_find (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> * mut RArchPlugin ; } extern "C" { pub fn r_arch_use (arch : * mut RArch , config : * mut RArchConfig , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_plugin_add (arch : * mut RArch , ap : * mut RArchPlugin) -> bool ; } extern "C" { pub fn r_arch_plugin_remove (arch : * mut RArch , ap : * mut RArchPlugin) -> bool ; } extern "C" { pub fn r_arch_del (arch : * mut RArch , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_free (arch : * mut RArch) ; } extern "C" { pub fn r_arch_config_use (config : * mut RArchConfig , arch : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_arch_config_set_cpu (config : * mut RArchConfig , cpu : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_arch_config_set_syntax (config : * mut RArchConfig , syntax : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_arch_config_set_bits (c : * mut RArchConfig , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_arch_config_new () -> * mut RArchConfig ; } extern "C" { pub fn r_arch_config_clone (c : * mut RArchConfig) -> * mut RArchConfig ; } extern "C" { pub fn r_arch_config_free (arg1 : * mut RArchConfig) ; } extern "C" { pub fn r_arch_value_new () -> * mut RArchValue ; } extern "C" { pub fn r_arch_value_new_reg (regname : * const :: std :: os :: raw :: c_char) -> * mut RArchValue ; } extern "C" { pub fn r_arch_set_endian (arch : * mut RArch , endian : u32) -> bool ; } extern "C" { pub fn r_arch_set_bits (arch : * mut RArch , bits : u32) -> bool ; } extern "C" { pub fn r_arch_set_arch (arch : * mut RArch , archname : * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_arch_optype_from_string (type_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_optype_tostring (t : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_stackop_tostring (s : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_op_family_tostring (n : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_arch_op_family_from_string (f : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_arch_op_direction_tostring (op : * mut r_anal_op_t) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RBraile { pub str_ : [:: std :: os :: raw :: c_char ; 4usize] , } # [test] fn bindgen_test_layout_RBraile () { const UNINIT : :: std :: mem :: MaybeUninit < RBraile > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RBraile > () , 4usize , concat ! ("Size of: " , stringify ! (RBraile))) ; assert_eq ! (:: std :: mem :: align_of :: < RBraile > () , 1usize , concat ! ("Alignment of " , stringify ! (RBraile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RBraile) , "::" , stringify ! (str_))) ; } extern "C" { pub fn r_print_braile (u : :: std :: os :: raw :: c_int) -> RBraile ; } pub type RPrintZoomCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , mode : :: std :: os :: raw :: c_int , addr : u64 , bufz : * mut u8 , size : u64) -> :: std :: os :: raw :: c_int > ; pub type RPrintNameCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintSizeCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> :: std :: os :: raw :: c_int > ; pub type RPrintCommentCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * mut :: std :: os :: raw :: c_char > ; pub type RPrintSectionGet = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintColorForByte = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , ch : u8 , verbose : bool) -> * const :: std :: os :: raw :: c_char > ; pub type RPrintHasRefs = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_zoom_t { pub buf : * mut u8 , pub from : u64 , pub to : u64 , pub size : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_print_zoom_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_zoom_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_zoom_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_print_zoom_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_zoom_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_zoom_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_print_zoom_t) , "::" , stringify ! (mode))) ; } impl Default for r_print_zoom_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrintZoom = r_print_zoom_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_t { pub user : * mut :: std :: os :: raw :: c_void , pub iob : RIOBind , pub pava : bool , pub coreb : RCoreBind , pub cfmt : * const :: std :: os :: raw :: c_char , pub datefmt : [:: std :: os :: raw :: c_char ; 32usize] , pub datezone : :: std :: os :: raw :: c_int , pub scr_prompt : bool , pub disasm : :: std :: option :: Option < unsafe extern "C" fn (p : * mut :: std :: os :: raw :: c_void , addr : u64) -> :: std :: os :: raw :: c_int > , pub config : * mut RArchConfig , pub width : :: std :: os :: raw :: c_int , pub limit : :: std :: os :: raw :: c_int , pub histblock : bool , pub cur_enabled : bool , pub cur : :: std :: os :: raw :: c_int , pub ocur : :: std :: os :: raw :: c_int , pub cols : :: std :: os :: raw :: c_int , pub flags : :: std :: os :: raw :: c_int , pub use_comments : bool , pub addrmod : :: std :: os :: raw :: c_int , pub col : :: std :: os :: raw :: c_int , pub stride : :: std :: os :: raw :: c_int , pub bytespace : :: std :: os :: raw :: c_int , pub pairs : :: std :: os :: raw :: c_int , pub resetbg : bool , pub zoom : * mut RPrintZoom , pub offname : RPrintNameCallback , pub offsize : RPrintSizeCallback , pub colorfor : RPrintColorForByte , pub hasrefs : RPrintHasRefs , pub get_comments : RPrintCommentCallback , pub get_section_name : RPrintSectionGet , pub formats : * mut Sdb , pub sdb_types : * mut Sdb , pub consb : RConsBind , pub num : * mut RNum , pub reg : * mut RReg , pub get_register : :: std :: option :: Option < unsafe extern "C" fn (reg : * mut RReg , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int) -> * mut RRegItem > , pub get_register_value : :: std :: option :: Option < unsafe extern "C" fn (reg : * mut RReg , item : * mut RRegItem) -> u64 > , pub exists_var : :: std :: option :: Option < unsafe extern "C" fn (print : * mut r_print_t , func_addr : u64 , str_ : * mut :: std :: os :: raw :: c_char) -> bool > , pub lines_cache : * mut u64 , pub lines_cache_sz : :: std :: os :: raw :: c_int , pub lines_abs : :: std :: os :: raw :: c_int , pub esc_bslash : bool , pub wide_offsets : bool , pub strconv_mode : * mut :: std :: os :: raw :: c_char , pub base36 : bool , pub vars : * mut RList , pub io_unalloc_ch : :: std :: os :: raw :: c_char , pub show_offset : bool , pub codevarname : * mut :: std :: os :: raw :: c_char , pub calc_row_offsets : bool , pub row_offsets : * mut u32 , pub row_offsets_sz : :: std :: os :: raw :: c_int , pub vflush : bool , pub screen_bounds : u64 , pub enable_progressbar : bool , pub charset : * mut RCharset , pub nbcolor : :: std :: os :: raw :: c_int , pub spinpos : :: std :: os :: raw :: c_int , pub spinmsg : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_print_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_t > () , 904usize , concat ! ("Size of: " , stringify ! (r_print_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pava) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (pava))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfmt) as usize - ptr as usize } , 480usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cfmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datefmt) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (datefmt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datezone) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (datezone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scr_prompt) as usize - ptr as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (scr_prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disasm) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (disasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . width) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (width))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 548usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . histblock) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (histblock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_enabled) as usize - ptr as usize } , 553usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cur_enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 556usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ocur) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (ocur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cols) as usize - ptr as usize } , 564usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (cols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 568usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_comments) as usize - ptr as usize } , 572usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (use_comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addrmod) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (addrmod))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . col) as usize - ptr as usize } , 580usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (col))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stride) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (stride))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytespace) as usize - ptr as usize } , 588usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (bytespace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pairs) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (pairs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . resetbg) as usize - ptr as usize } , 596usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (resetbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offname) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (offname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offsize) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (offsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . colorfor) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (colorfor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hasrefs) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (hasrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_comments) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_section_name) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_section_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . formats) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (formats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_types) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (sdb_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 736usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_register) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_register))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_register_value) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (get_register_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exists_var) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (exists_var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_cache) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_cache_sz) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_cache_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lines_abs) as usize - ptr as usize } , 788usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (lines_abs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esc_bslash) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (esc_bslash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wide_offsets) as usize - ptr as usize } , 793usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (wide_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strconv_mode) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (strconv_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base36) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (base36))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io_unalloc_ch) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (io_unalloc_ch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . show_offset) as usize - ptr as usize } , 825usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (show_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codevarname) as usize - ptr as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (codevarname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . calc_row_offsets) as usize - ptr as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (calc_row_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row_offsets) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (row_offsets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . row_offsets_sz) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (row_offsets_sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vflush) as usize - ptr as usize } , 860usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (vflush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . screen_bounds) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (screen_bounds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enable_progressbar) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (enable_progressbar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . charset) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (charset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbcolor) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (nbcolor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spinpos) as usize - ptr as usize } , 892usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (spinpos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spinmsg) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (r_print_t) , "::" , stringify ! (spinmsg))) ; } impl Default for r_print_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrint = r_print_t ; extern "C" { pub fn r_print_is_interrupted (p : * mut RPrint) -> bool ; } extern "C" { pub fn r_print_hexpair (p : * mut RPrint , str_ : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_printf (p : * const RPrint , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_print_hex_from_bin (p : * mut RPrint , bin_str : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_bin_from_str (p : * mut RPrint , str_ : * mut :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_new () -> * mut RPrint ; } extern "C" { pub fn r_print_init (p : * mut RPrint) ; } extern "C" { pub fn r_print_free (p : * mut RPrint) ; } extern "C" { pub fn r_print_fini (p : * mut RPrint) -> bool ; } extern "C" { pub fn r_print_set_flags (p : * mut RPrint , _flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_unset_flags (p : * mut RPrint , flags : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_addr (p : * mut RPrint , addr : u64) ; } extern "C" { pub fn r_print_section (p : * mut RPrint , at : u64) ; } extern "C" { pub fn r_print_columns (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_hexii (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , step : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_hexdump (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , base : :: std :: os :: raw :: c_int , step : :: std :: os :: raw :: c_int , zoomsz : usize) ; } extern "C" { pub fn r_print_hexdump_simple (buf : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_jsondump (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_hexdiff (p : * mut RPrint , aa : u64 , a : * const u8 , ba : u64 , b : * const u8 , len : :: std :: os :: raw :: c_int , scndcol : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_bytes (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , sep : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_fill (p : * mut RPrint , arr : * const u8 , size : :: std :: os :: raw :: c_int , addr : u64 , step : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_byte (p : * mut RPrint , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int , ch : u8) ; } extern "C" { pub fn r_print_byte_color (p : * mut RPrint , addr : u64 , ch : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_c (p : * mut RPrint , str_ : * const u8 , len : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_raw (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , offlines : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_have_cursor (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_print_cursor_pointer (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_print_cursor (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_cursor_range (p : * mut RPrint , cur : :: std :: os :: raw :: c_int , to : :: std :: os :: raw :: c_int , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_get_cursor (p : * mut RPrint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_set_cursor (p : * mut RPrint , curset : :: std :: os :: raw :: c_int , ocursor : :: std :: os :: raw :: c_int , cursor : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_code (p : * mut RPrint , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , lang : :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_print_format_t { pub p : * mut RPrint , pub pj : * mut PJ , pub depth : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub seeki : u64 , pub mode : :: std :: os :: raw :: c_int , pub slide : :: std :: os :: raw :: c_int , pub oldslide : :: std :: os :: raw :: c_int , pub ident : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_print_format_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_print_format_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_print_format_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_print_format_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_print_format_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_print_format_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (p))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seeki) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (seeki))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slide) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (slide))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldslide) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (oldslide))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ident) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_print_format_t) , "::" , stringify ! (ident))) ; } impl Default for r_print_format_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RPrintFormat = r_print_format_t ; extern "C" { pub fn r_print_format_struct_size (p : * mut RPrint , format : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , n : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format (p : * mut RPrint , seek : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , elem : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , field : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format2 (p : * mut RPrint , seek : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int , fmt : * const :: std :: os :: raw :: c_char , elem : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , field : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format_internal (p : * mut RPrint , pf : * mut RPrintFormat , seek : u64 , b : * const u8 , len : :: std :: os :: raw :: c_int , formatname : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int , setval : * const :: std :: os :: raw :: c_char , ofield : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_format_byname (p : * mut RPrint , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_offset (p : * mut RPrint , off : u64 , invert : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int , label : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_offset_sg (p : * mut RPrint , off : u64 , invert : :: std :: os :: raw :: c_int , offseg : :: std :: os :: raw :: c_int , seggrn : :: std :: os :: raw :: c_int , offdec : :: std :: os :: raw :: c_int , delta : :: std :: os :: raw :: c_int , label : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_string (p : * mut RPrint , seek : u64 , str_ : * const u8 , len : :: std :: os :: raw :: c_int , options : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_dos (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_hfs (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_w32 (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_date_unix (p : * mut RPrint , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_zoom (p : * mut RPrint , cb : RPrintZoomCallback , cbarg : * mut :: std :: os :: raw :: c_void , from : u64 , to : u64 , len : :: std :: os :: raw :: c_int , maxlen : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_zoom_buf (p : * mut RPrint , cb : RPrintZoomCallback , cbarg : * mut :: std :: os :: raw :: c_void , from : u64 , to : u64 , len : :: std :: os :: raw :: c_int , maxlen : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_progressbar (pr : * mut RPrint , pc : :: std :: os :: raw :: c_int , _cols : :: std :: os :: raw :: c_int , title : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_progressbar_with_count (pr : * mut RPrint , pc : :: std :: os :: raw :: c_uint , total : :: std :: os :: raw :: c_uint , _cols : :: std :: os :: raw :: c_int , reset_line : bool) ; } extern "C" { pub fn r_print_spinbar (p : * mut RPrint , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_portionbar (p : * mut RPrint , portions : * const u64 , n_portions : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_rangebar (p : * mut RPrint , startA : u64 , endA : u64 , min : u64 , max : u64 , cols : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_randomart (dgst_raw : * const u8 , dgst_raw_len : u32 , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_2bpp_row (p : * mut RPrint , buf : * mut u8 , colors : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_2bpp_tiles (p : * mut RPrint , buf : * mut u8 , buflen : usize , tiles : u32 , colors : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_print_colorize_opcode (print : * mut RPrint , p : * mut :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , num : * const :: std :: os :: raw :: c_char , partial_reset : bool , func_addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_color_op_type (p : * mut RPrint , anal_type : u32) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_set_interrupted (i : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_init_rowoffsets (p : * mut RPrint) ; } extern "C" { pub fn r_print_rowoff (p : * mut RPrint , i : :: std :: os :: raw :: c_int) -> u32 ; } extern "C" { pub fn r_print_set_rowoff (p : * mut RPrint , i : :: std :: os :: raw :: c_int , offset : u32 , overwrite : bool) ; } extern "C" { pub fn r_print_row_at_off (p : * mut RPrint , offset : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_pie (p : * mut RPrint , nvalues : :: std :: os :: raw :: c_int , values : * mut :: std :: os :: raw :: c_int , text : * mut * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_print_treemap (n : :: std :: os :: raw :: c_int , values : * mut :: std :: os :: raw :: c_int , labels : * mut * const :: std :: os :: raw :: c_char , width : :: std :: os :: raw :: c_int , height : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_graphline (print : * mut RPrint , buf : * const u8 , len : usize) ; } extern "C" { pub fn r_print_unpack7bit (src : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_pack7bit (src : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram_bytes (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram (bump : * const :: std :: os :: raw :: c_char , w : :: std :: os :: raw :: c_int , h : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_stereogram_render (p : * mut RPrint , buf : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_set_screenbounds (p : * mut RPrint , addr : u64) ; } extern "C" { pub fn r_util_lines_getline (lines_cache : * mut u64 , lines_cache_sz : :: std :: os :: raw :: c_int , off : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_json_indent (s : * const :: std :: os :: raw :: c_char , color : bool , tab : * const :: std :: os :: raw :: c_char , colors : * mut * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_json_human (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_json_path (s : * const :: std :: os :: raw :: c_char , pos : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_code_tocolor (s : * const :: std :: os :: raw :: c_char , cc : * mut RConsCodeColors) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_print_code_indent (s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_search_keyword_t { pub bin_keyword : * mut u8 , pub bin_binmask : * mut u8 , pub keyword_length : u32 , pub binmask_length : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub count : :: std :: os :: raw :: c_int , pub kwidx : :: std :: os :: raw :: c_int , pub icase : bool , pub type_ : :: std :: os :: raw :: c_int , pub last : u64 , pub align : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_search_keyword_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_search_keyword_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_search_keyword_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_search_keyword_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_search_keyword_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_search_keyword_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_keyword) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (bin_keyword))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin_binmask) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (bin_binmask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keyword_length) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (keyword_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binmask_length) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (binmask_length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kwidx) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (kwidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icase) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (icase))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_search_keyword_t) , "::" , stringify ! (align))) ; } impl Default for r_search_keyword_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSearchKeyword = r_search_keyword_t ; pub type RSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (kw : * mut RSearchKeyword , user : * mut :: std :: os :: raw :: c_void , where_ : u64) -> :: std :: os :: raw :: c_int > ; pub type RSearchRCb = :: std :: option :: Option < unsafe extern "C" fn (kw : * mut RSearchKeyword , mlen : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void , where_ : u64) -> :: std :: os :: raw :: c_int > ; pub type RSearchDFree = :: std :: option :: Option < unsafe extern "C" fn (ptr : * mut :: std :: os :: raw :: c_void) > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_search_t { pub n_kws : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub longest : :: std :: os :: raw :: c_int , pub pattern_size : u32 , pub string_min : u32 , pub string_max : u32 , pub data : * mut :: std :: os :: raw :: c_void , pub datafree : RSearchDFree , pub user : * mut :: std :: os :: raw :: c_void , pub callback : RSearchCallback , pub r_callback : RSearchRCb , pub nhits : u64 , pub maxhits : u64 , pub hits : * mut RList , pub distance : :: std :: os :: raw :: c_int , pub inverse : :: std :: os :: raw :: c_int , pub overlap : bool , pub contiguous : :: std :: os :: raw :: c_int , pub align : :: std :: os :: raw :: c_int , pub update : :: std :: option :: Option < unsafe extern "C" fn (s : * mut r_search_t , from : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub kws : * mut RList , pub iob : RIOBind , pub consb : RConsBind , pub bckwrds : :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_search_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_search_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_search_t > () , 496usize , concat ! ("Size of: " , stringify ! (r_search_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_search_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_search_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_kws) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (n_kws))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . longest) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (longest))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pattern_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (pattern_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_min) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (string_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . string_max) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (string_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . datafree) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (datafree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_callback) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (r_callback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nhits) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (nhits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxhits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (maxhits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hits) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (hits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . distance) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (distance))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inverse) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (inverse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overlap) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (overlap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contiguous) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (contiguous))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . align) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kws) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (kws))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (consb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bckwrds) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_search_t) , "::" , stringify ! (bckwrds))) ; } impl Default for r_search_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSearch = r_search_t ; extern "C" { pub fn r_search_new (mode : :: std :: os :: raw :: c_int) -> * mut RSearch ; } extern "C" { pub fn r_search_set_mode (s : * mut RSearch , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_free (s : * mut RSearch) ; } extern "C" { pub fn r_search_find (s : * mut RSearch , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_search_find_uds (search : * mut RSearch , addr : u64 , data : * const u8 , size : usize , verbose : bool) -> * mut RList ; } extern "C" { pub fn r_search_update (s : * mut RSearch , from : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_long) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_update_read (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_maps (s : * mut RSearch , maps : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_keyword_free (kw : * mut RSearchKeyword) ; } extern "C" { pub fn r_search_keyword_new (kw : * const u8 , kwlen : :: std :: os :: raw :: c_int , bm : * const u8 , bmlen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_str (kw : * const :: std :: os :: raw :: c_char , bm : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , icase : bool) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hexstr (xs : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_wide (kw : * const :: std :: os :: raw :: c_char , bm : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char , icase : bool , be : bool) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hex (kwstr : * const :: std :: os :: raw :: c_char , bmstr : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_hexmask (kwstr : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_keyword_new_regexp (str_ : * const :: std :: os :: raw :: c_char , data : * const :: std :: os :: raw :: c_char) -> * mut RSearchKeyword ; } extern "C" { pub fn r_search_kw_add (s : * mut RSearch , kw : * mut RSearchKeyword) -> bool ; } extern "C" { pub fn r_search_reset (s : * mut RSearch , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_search_kw_reset (s : * mut RSearch) ; } extern "C" { pub fn r_search_string_prepare_backward (s : * mut RSearch) ; } extern "C" { pub fn r_search_range_add (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_range_set (s : * mut RSearch , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_range_reset (s : * mut RSearch) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_hit_new (s : * mut RSearch , kw : * mut RSearchKeyword , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_set_distance (s : * mut RSearch , dist : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_search_strings (s : * mut RSearch , min : u32 , max : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_search_set_string_limits (s : * mut RSearch , min : u32 , max : u32) -> bool ; } extern "C" { pub fn r_search_set_callback (s : * mut RSearch , callback : RSearchCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_search_set_read_cb (s : * mut RSearch , cb : RSearchRCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_search_begin (s : * mut RSearch) ; } extern "C" { pub fn r_search_pattern_size (s : * mut RSearch , size : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub swi : :: std :: os :: raw :: c_int , pub num : :: std :: os :: raw :: c_int , pub args : :: std :: os :: raw :: c_int , pub sargs : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_syscall_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_syscall_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swi) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (swi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sargs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_syscall_item_t) , "::" , stringify ! (sargs))) ; } impl Default for r_syscall_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscallItem = r_syscall_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_port_t { pub port : :: std :: os :: raw :: c_int , pub name : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_syscall_port_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_port_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_port_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_syscall_port_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_port_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_port_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_port_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_port_t) , "::" , stringify ! (name))) ; } impl Default for r_syscall_port_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscallPort = r_syscall_port_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_syscall_t { pub fd : * mut FILE , pub arch : * mut :: std :: os :: raw :: c_char , pub os : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub cpu : * mut :: std :: os :: raw :: c_char , pub sysptr : * mut RSyscallItem , pub sysport : * mut RSyscallPort , pub db : * mut Sdb , pub srdb : * mut Sdb , pub refs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_syscall_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_syscall_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_syscall_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_syscall_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_syscall_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_syscall_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cpu) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (cpu))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (sysptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sysport) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (sysport))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . srdb) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (srdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_syscall_t) , "::" , stringify ! (refs))) ; } impl Default for r_syscall_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSyscall = r_syscall_t ; extern "C" { pub fn r_syscall_item_new_from_string (name : * const :: std :: os :: raw :: c_char , s : * const :: std :: os :: raw :: c_char) -> * mut RSyscallItem ; } extern "C" { pub fn r_syscall_item_free (si : * mut RSyscallItem) ; } extern "C" { pub fn r_syscall_new () -> * mut RSyscall ; } extern "C" { pub fn r_syscall_free (ctx : * mut RSyscall) ; } extern "C" { pub fn r_syscall_ref (sc : * mut RSyscall) -> * mut RSyscall ; } extern "C" { pub fn r_syscall_setup (s : * mut RSyscall , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , cpu : * const :: std :: os :: raw :: c_char , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_syscall_get (ctx : * mut RSyscall , num : :: std :: os :: raw :: c_int , swi : :: std :: os :: raw :: c_int) -> * mut RSyscallItem ; } extern "C" { pub fn r_syscall_get_num (ctx : * mut RSyscall , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_syscall_get_i (ctx : * mut RSyscall , num : :: std :: os :: raw :: c_int , swi : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscall_sysreg (s : * mut RSyscall , type_ : * const :: std :: os :: raw :: c_char , num : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_syscall_list (ctx : * mut RSyscall) -> * mut RList ; } extern "C" { pub fn r_syscall_get_swi (s : * mut RSyscall) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_syscall_get_io (s : * mut RSyscall , ioport : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_zone_item_t { pub from : u64 , pub to : u64 , pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_flag_zone_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_zone_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_zone_item_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_flag_zone_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_zone_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_zone_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_zone_item_t) , "::" , stringify ! (name))) ; } impl Default for r_flag_zone_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagZoneItem = r_flag_zone_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_item_meta_t { pub type_ : * mut :: std :: os :: raw :: c_char , pub color : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub alias : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_flag_item_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_item_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_item_meta_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_flag_item_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_item_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_item_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_meta_t) , "::" , stringify ! (alias))) ; } impl Default for r_flag_item_meta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagItemMeta = r_flag_item_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_item_t { pub id : u32 , pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub rawname : * mut :: std :: os :: raw :: c_char , pub demangled : bool , pub addr : u64 , pub size : u64 , pub space : * mut RSpace , } # [test] fn bindgen_test_layout_r_flag_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_item_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_flag_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawname) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (rawname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangled) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (demangled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_item_t) , "::" , stringify ! (space))) ; } impl Default for r_flag_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagItem = r_flag_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_t { pub spaces : RSpaces , pub base : i64 , pub realnames : bool , pub autospace : bool , pub tags : * mut Sdb , pub num : * mut RNum , pub by_addr : * mut RSkipList , pub ht_name : * mut [u64 ; 11usize] , pub ht_meta : * mut [u64 ; 11usize] , pub zones : * mut RList , pub mask : u64 , pub lock : * mut RThreadLock , pub lastid : u32 , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_flag_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_flag_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . spaces) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . base) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (base))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realnames) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (realnames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autospace) as usize - ptr as usize } , 49usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (autospace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tags) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . by_addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (by_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_name) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (ht_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_meta) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (ht_meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zones) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (zones))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (mask))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastid) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (lastid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_flag_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_flag_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlag = r_flag_t ; pub type RFlagExistAt = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , flag_prefix : * const :: std :: os :: raw :: c_char , fp_size : u16 , addr : u64) -> bool > ; pub type RFlagGet = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagItem > ; pub type RFlagGetAtAddr = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , prionospace : bool , arg1 : u64) -> * mut RFlagItem > ; pub type RFlagGetAt = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64 , closest : bool) -> * mut RFlagItem > ; pub type RFlagGetList = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64) -> * const RList > ; pub type RFlagSet = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem > ; pub type RFlagUnset = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , item : * mut RFlagItem) -> bool > ; pub type RFlagUnsetName = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RFlagUnsetOff = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , addr : u64) -> bool > ; pub type RFlagSetSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RSpace > ; pub type RFlagPopSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag) -> bool > ; pub type RFlagPushSpace = :: std :: option :: Option < unsafe extern "C" fn (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RFlagItemCb = :: std :: option :: Option < unsafe extern "C" fn (fi : * mut RFlagItem , user : * mut :: std :: os :: raw :: c_void) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_flag_bind_t { pub init : :: std :: os :: raw :: c_int , pub f : * mut RFlag , pub exist_at : RFlagExistAt , pub get : RFlagGet , pub get_at : RFlagGetAt , pub get_list : RFlagGetList , pub set : RFlagSet , pub unset : RFlagUnset , pub unset_name : RFlagUnsetName , pub unset_addr : RFlagUnsetOff , pub set_fs : RFlagSetSpace , pub push_fs : RFlagPushSpace , pub pop_fs : RFlagPopSpace , } # [test] fn bindgen_test_layout_r_flag_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_flag_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_flag_bind_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_flag_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_flag_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_flag_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . f) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (f))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exist_at) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (exist_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_at) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_list) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (get_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset_name) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . unset_addr) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (unset_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_fs) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (set_fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push_fs) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (push_fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pop_fs) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_flag_bind_t) , "::" , stringify ! (pop_fs))) ; } impl Default for r_flag_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RFlagBind = r_flag_bind_t ; extern "C" { pub fn r_flag_get_meta (f : * mut RFlag , id : u32) -> * mut RFlagItemMeta ; } extern "C" { pub fn r_flag_get_meta2 (f : * mut RFlag , id : u32) -> * mut RFlagItemMeta ; } extern "C" { pub fn r_flag_del_meta (f : * mut RFlag , id : u32) ; } extern "C" { pub fn r_flag_bind (io : * mut RFlag , bnd : * mut RFlagBind) ; } extern "C" { pub fn r_flag_new () -> * mut RFlag ; } extern "C" { pub fn r_flag_free (f : * mut RFlag) ; } extern "C" { pub fn r_flag_list (f : * mut RFlag , rad : :: std :: os :: raw :: c_int , pfx : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_exist_at (f : * mut RFlag , flag_prefix : * const :: std :: os :: raw :: c_char , fp_size : u16 , addr : u64) -> bool ; } extern "C" { pub fn r_flag_get (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_in (f : * mut RFlag , addr : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_by_spaces (f : * mut RFlag , prionospace : bool , addr : u64 , ...) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_get_at (f : * mut RFlag , addr : u64 , closest : bool) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_closest_in_space (f : * mut RFlag , space : * const :: std :: os :: raw :: c_char , addr : u64 , radius : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_closest_with_prefix (f : * mut RFlag , pfx : * const :: std :: os :: raw :: c_char , addr : u64 , radius : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_all_list (f : * mut RFlag , by_space : bool) -> * mut RList ; } extern "C" { pub fn r_flag_get_list (f : * mut RFlag , addr : u64) -> * const RList ; } extern "C" { pub fn r_flag_get_liststr (f : * mut RFlag , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_unset (f : * mut RFlag , item : * mut RFlagItem) -> bool ; } extern "C" { pub fn r_flag_unset_name (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_unset_addr (f : * mut RFlag , addr : u64) -> bool ; } extern "C" { pub fn r_flag_unset_all (f : * mut RFlag) ; } extern "C" { pub fn r_flag_set (fo : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_set_inspace (f : * mut RFlag , space : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_set_next (fo : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64 , size : u32) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_item_free (item : * mut RFlagItem) ; } extern "C" { pub fn r_flag_item_clone (item : * mut RFlagItem) -> * mut RFlagItem ; } extern "C" { pub fn r_flag_item_set_type (f : * mut RFlag , fi : * mut RFlagItem , type_ : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_alias (f : * mut RFlag , item : * mut RFlagItem , alias : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_comment (f : * mut RFlag , fi : * mut RFlagItem , comment : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_realname (f : * mut RFlag , fi : * mut RFlagItem , realname : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_item_set_color (f : * mut RFlag , item : * mut RFlagItem , color : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_unset_glob (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_rename (f : * mut RFlag , item : * mut RFlagItem , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_relocate (f : * mut RFlag , addr : u64 , addr_mask : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_move (f : * mut RFlag , at : u64 , to : u64) -> bool ; } extern "C" { pub fn r_flag_count (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_flag_foreach (f : * mut RFlag , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_prefix (f : * mut RFlag , pfx : * const :: std :: os :: raw :: c_char , pfx_len : :: std :: os :: raw :: c_int , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_range (f : * mut RFlag , from : u64 , to : u64 , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_glob (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_space (f : * mut RFlag , space : * const RSpace , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_foreach_space_glob (f : * mut RFlag , glob : * const :: std :: os :: raw :: c_char , space : * const RSpace , cb : RFlagItemCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_tags_list (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_tags_set (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char , words : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_tags_reset (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_flag_tags_get (f : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_flag_zone_item_free (a : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_flag_zone_add (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_flag_zone_del (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_zone_get (fz : * mut RFlag , name : * const :: std :: os :: raw :: c_char) -> * mut RFlagZoneItem ; } extern "C" { pub fn r_flag_zone_around (fz : * mut RFlag , addr : u64 , prev : * mut * const :: std :: os :: raw :: c_char , next : * mut * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_flag_zone_list (fz : * mut RFlag , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_flag_zone_reset (f : * mut RFlag) -> bool ; } extern "C" { pub fn r_flag_zone_barlist (f : * mut RFlag , from : u64 , bsize : u64 , rows : :: std :: os :: raw :: c_int) -> * mut RList ; } pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_KEYWORD : r_syntax_highlight_type_t = 0 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_COMMENT : r_syntax_highlight_type_t = 1 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_DATATYPE : r_syntax_highlight_type_t = 2 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_FUNCTION_NAME : r_syntax_highlight_type_t = 3 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_FUNCTION_PARAMETER : r_syntax_highlight_type_t = 4 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_LOCAL_VARIABLE : r_syntax_highlight_type_t = 5 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_CONSTANT_VARIABLE : r_syntax_highlight_type_t = 6 ; pub const r_syntax_highlight_type_t_R_SYNTAX_HIGHLIGHT_TYPE_GLOBAL_VARIABLE : r_syntax_highlight_type_t = 7 ; pub type r_syntax_highlight_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_syntax_highlight_type_t as RSyntaxHighlightType ; # [doc = "< Gives the offset of the specified range in annotation."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_OFFSET : r_code_annotation_type_t = 0 ; # [doc = "< Represents the kind of data the specified range represents for highlighting purposes."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_SYNTAX_HIGHLIGHT : r_code_annotation_type_t = 1 ; # [doc = "< Specified range in annotation represents a function name."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_FUNCTION_NAME : r_code_annotation_type_t = 2 ; # [doc = "< Specified range in annotation represents a global variable."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_GLOBAL_VARIABLE : r_code_annotation_type_t = 3 ; # [doc = "< Specified range in annotation represents a constant variable with an address."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_CONSTANT_VARIABLE : r_code_annotation_type_t = 4 ; # [doc = "< Specified range in annotation represents a local variable."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_LOCAL_VARIABLE : r_code_annotation_type_t = 5 ; # [doc = "< Specified range in annotation represents a function parameter."] pub const r_code_annotation_type_t_R_CODEMETA_TYPE_FUNCTION_PARAMETER : r_code_annotation_type_t = 6 ; # [doc = " Represents the type of annnotation."] pub type r_code_annotation_type_t = :: std :: os :: raw :: c_uint ; # [doc = " Represents the type of annnotation."] pub use self :: r_code_annotation_type_t as RCodeMetaItemType ; # [doc = " \\brief Annotations for the decompiled code are represented using this structure."] # [repr (C)] # [derive (Copy , Clone)] pub struct r_codemeta_item_t { pub start : usize , pub end : usize , pub type_ : RCodeMetaItemType , pub __bindgen_anon_1 : r_codemeta_item_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_codemeta_item_t__bindgen_ty_1 { pub offset : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 , pub syntax_highlight : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 , pub reference : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 , pub variable : r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 { pub offset : u64 , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_1) , "::" , stringify ! (offset))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 { pub type_ : RSyntaxHighlightType , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 > () , 4usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2) , "::" , stringify ! (type_))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 { pub name : * mut :: std :: os :: raw :: c_char , pub offset : u64 , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3) , "::" , stringify ! (offset))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_3 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 { pub name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4) , "::" , stringify ! (name))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1__bindgen_ty_4 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_codemeta_item_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syntax_highlight) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (syntax_highlight))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reference) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (reference))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . variable) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t__bindgen_ty_1) , "::" , stringify ! (variable))) ; } impl Default for r_codemeta_item_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_codemeta_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_item_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_codemeta_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_item_t) , "::" , stringify ! (type_))) ; } impl Default for r_codemeta_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [doc = " \\brief Annotations for the decompiled code are represented using this structure."] pub type RCodeMetaItem = r_codemeta_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_codemeta_t { # [doc = "< Decompiled code. RCodeMeta owns this string and it must free it."] pub code : * mut :: std :: os :: raw :: c_char , # [doc = "< @ref RVector <RCodeMetaItem> contains the list of annotations for the decompiled code."] pub annotations : RVector , pub tree : * mut RRBTree , } # [test] fn bindgen_test_layout_r_codemeta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_codemeta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_codemeta_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_codemeta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_codemeta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_codemeta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . annotations) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (annotations))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_codemeta_t) , "::" , stringify ! (tree))) ; } impl Default for r_codemeta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCodeMeta = r_codemeta_t ; extern "C" { pub fn r_codemeta_new (code : * const :: std :: os :: raw :: c_char) -> * mut RCodeMeta ; } extern "C" { pub fn r_codemeta_free (code : * mut RCodeMeta) ; } extern "C" { pub fn r_codemeta_item_new () -> * mut RCodeMetaItem ; } extern "C" { pub fn r_codemeta_item_free (e : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_item_fini (e : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_item_is_reference (annotation : * mut RCodeMetaItem) -> bool ; } extern "C" { pub fn r_codemeta_item_is_variable (annotation : * mut RCodeMetaItem) -> bool ; } extern "C" { pub fn r_codemeta_add_item (code : * mut RCodeMeta , annotation : * mut RCodeMetaItem) ; } extern "C" { pub fn r_codemeta_print (code : * mut RCodeMeta , line_offsets : * mut RVector) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print2 (code : * mut RCodeMeta , line_offsets : * mut RVector , anal : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_disasm (code : * mut RCodeMeta , line_offsets : * mut RVector , anal : * mut :: std :: os :: raw :: c_void) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_comment_cmds (code : * mut RCodeMeta) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_print_json (code : * mut RCodeMeta) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_codemeta_at (code : * mut RCodeMeta , offset : usize) -> * mut RPVector ; } extern "C" { pub fn r_codemeta_in (code : * mut RCodeMeta , start : usize , end : usize) -> * mut RPVector ; } extern "C" { pub fn r_codemeta_line_offsets (code : * mut RCodeMeta) -> * mut RVector ; } extern "C" { pub fn r_codemeta_item_clone (code : * mut RCodeMetaItem) -> * mut RCodeMetaItem ; } extern "C" { pub fn r_codemeta_clone (code : * mut RCodeMeta) -> * mut RCodeMeta ; } pub type SetU = [u64 ; 11usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_dwarf_context { pub info : * const RBinDwarfDebugInfo , pub loc : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_anal_dwarf_context () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_dwarf_context > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_dwarf_context > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_dwarf_context))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_dwarf_context > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_dwarf_context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_dwarf_context) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loc) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_dwarf_context) , "::" , stringify ! (loc))) ; } impl Default for r_anal_dwarf_context { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalDwarfContext = r_anal_dwarf_context ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_range_t { pub from : u64 , pub to : u64 , pub bits : :: std :: os :: raw :: c_int , pub rb_max_addr : u64 , pub rb : RBNode , } # [test] fn bindgen_test_layout_r_anal_range_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_range_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_range_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_anal_range_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_range_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_range_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . from) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (from))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . to) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (to))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb_max_addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (rb_max_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rb) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_range_t) , "::" , stringify ! (rb))) ; } impl Default for r_anal_range_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRange = r_anal_range_t ; pub type RAnalType = r_anal_type_t ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_STRUCT : RAnalBaseTypeKind = 0 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_UNION : RAnalBaseTypeKind = 1 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_ENUM : RAnalBaseTypeKind = 2 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_TYPEDEF : RAnalBaseTypeKind = 3 ; pub const RAnalBaseTypeKind_R_ANAL_BASE_TYPE_KIND_ATOMIC : RAnalBaseTypeKind = 4 ; pub type RAnalBaseTypeKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_struct_t { pub members : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_struct_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_struct_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_struct_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_struct_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_struct_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_struct_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . members) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_struct_t) , "::" , stringify ! (members))) ; } impl Default for r_anal_base_type_struct_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeStruct = r_anal_base_type_struct_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_union_t { pub members : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_union_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_union_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_union_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_union_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_union_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_union_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . members) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_union_t) , "::" , stringify ! (members))) ; } impl Default for r_anal_base_type_union_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeUnion = r_anal_base_type_union_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_type_enum_t { pub cases : RVector , } # [test] fn bindgen_test_layout_r_anal_base_type_enum_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_enum_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_enum_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_enum_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_enum_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_enum_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cases) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_enum_t) , "::" , stringify ! (cases))) ; } impl Default for r_anal_base_type_enum_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseTypeEnum = r_anal_base_type_enum_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_anal_base_type_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub size : u64 , pub kind : RAnalBaseTypeKind , pub __bindgen_anon_1 : r_anal_base_type_t__bindgen_ty_1 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_anal_base_type_t__bindgen_ty_1 { pub struct_data : RAnalBaseTypeStruct , pub enum_data : RAnalBaseTypeEnum , pub union_data : RAnalBaseTypeUnion , } # [test] fn bindgen_test_layout_r_anal_base_type_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_t__bindgen_ty_1 > () , 48usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . struct_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (struct_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enum_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (enum_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . union_data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t__bindgen_ty_1) , "::" , stringify ! (union_data))) ; } impl Default for r_anal_base_type_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_anal_base_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_type_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_anal_base_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_type_t) , "::" , stringify ! (kind))) ; } impl Default for r_anal_base_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseType = r_anal_base_type_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_diff_t { pub type_ : :: std :: os :: raw :: c_int , pub addr : u64 , pub dist : f64 , pub name : * mut :: std :: os :: raw :: c_char , pub size : u32 , } # [test] fn bindgen_test_layout_r_anal_diff_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_diff_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_diff_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_anal_diff_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_diff_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_diff_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dist) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (dist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_diff_t) , "::" , stringify ! (size))) ; } impl Default for r_anal_diff_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalDiff = r_anal_diff_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_function_meta_t { pub _min : u64 , pub _max : u64 , pub numrefs : :: std :: os :: raw :: c_int , pub numcallrefs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_function_meta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_meta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_meta_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_function_meta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_meta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_meta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _min) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (_min))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _max) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numrefs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (numrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numcallrefs) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_meta_t) , "::" , stringify ! (numcallrefs))) ; } pub type RAnalFcnMeta = r_anal_function_meta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_function_t { pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , pub callconv : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub labels : * mut [u64 ; 11usize] , pub label_addrs : * mut [u64 ; 11usize] , pub vars : RPVector , pub inst_vars : * mut [u64 ; 11usize] , pub reg_save_area : u64 , pub bp_off : i64 , pub stack : i64 , pub maxstack : :: std :: os :: raw :: c_int , pub ninstr : :: std :: os :: raw :: c_int , pub folded : bool , pub is_pure : bool , pub is_variadic : bool , pub has_changed : bool , pub bp_frame : bool , pub is_noreturn : bool , pub fingerprint : * mut u8 , pub fingerprint_size : usize , pub diff : * mut RAnalDiff , pub bbs : * mut RList , pub meta : RAnalFcnMeta , pub imports : * mut RList , pub anal : * mut r_anal_t , pub ts : u64 , } # [test] fn bindgen_test_layout_r_anal_function_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_anal_function_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callconv) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (callconv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (labels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label_addrs) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (label_addrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inst_vars) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (inst_vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_save_area) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (reg_save_area))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_off) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bp_off))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stack) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxstack) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (maxstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninstr) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (ninstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . folded) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (folded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_pure) as usize - ptr as usize } , 145usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_pure))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_variadic) as usize - ptr as usize } , 146usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_variadic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . has_changed) as usize - ptr as usize } , 147usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (has_changed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_frame) as usize - ptr as usize } , 148usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bp_frame))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_noreturn) as usize - ptr as usize } , 149usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (is_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (fingerprint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_size) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (fingerprint_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (diff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbs) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (bbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_t) , "::" , stringify ! (ts))) ; } impl Default for r_anal_function_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalFunction = r_anal_function_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_type_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : u32 , pub size : u32 , pub content : * mut RList , } # [test] fn bindgen_test_layout_r_anal_type_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_type_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_type_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_type_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_type_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_type_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_type_t) , "::" , stringify ! (content))) ; } impl Default for r_anal_type_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub const RAnalMetaType_R_META_TYPE_ANY : RAnalMetaType = - 1 ; pub const RAnalMetaType_R_META_TYPE_BIND : RAnalMetaType = 98 ; pub const RAnalMetaType_R_META_TYPE_CODE : RAnalMetaType = 99 ; pub const RAnalMetaType_R_META_TYPE_DATA : RAnalMetaType = 100 ; pub const RAnalMetaType_R_META_TYPE_STRING : RAnalMetaType = 115 ; pub const RAnalMetaType_R_META_TYPE_FORMAT : RAnalMetaType = 102 ; pub const RAnalMetaType_R_META_TYPE_MAGIC : RAnalMetaType = 109 ; pub const RAnalMetaType_R_META_TYPE_HIDE : RAnalMetaType = 104 ; pub const RAnalMetaType_R_META_TYPE_COMMENT : RAnalMetaType = 67 ; pub const RAnalMetaType_R_META_TYPE_RUN : RAnalMetaType = 114 ; pub const RAnalMetaType_R_META_TYPE_HIGHLIGHT : RAnalMetaType = 72 ; pub const RAnalMetaType_R_META_TYPE_VARTYPE : RAnalMetaType = 116 ; pub type RAnalMetaType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_meta_item_t { pub type_ : u8 , pub subtype : u8 , pub str_ : * mut :: std :: os :: raw :: c_char , pub space : * const RSpace , } # [test] fn bindgen_test_layout_r_anal_meta_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_meta_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_meta_item_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_meta_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_meta_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_meta_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subtype) as usize - ptr as usize } , 1usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (subtype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_meta_item_t) , "::" , stringify ! (space))) ; } impl Default for r_anal_meta_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalMetaItem = r_anal_meta_item_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_callbacks_t { pub on_fcn_new : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > , pub on_fcn_delete : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > , pub on_fcn_rename : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction , oldname : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub on_fcn_bb_new : :: std :: option :: Option < unsafe extern "C" fn (arg1 : * mut r_anal_t , user : * mut :: std :: os :: raw :: c_void , fcn : * mut RAnalFunction , bb : * mut r_anal_bb_t) -> :: std :: os :: raw :: c_int > , } # [test] fn bindgen_test_layout_r_anal_callbacks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_callbacks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_callbacks_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_callbacks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_callbacks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_callbacks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_new) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_new))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_delete) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_delete))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_rename) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_rename))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_fcn_bb_new) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_callbacks_t) , "::" , stringify ! (on_fcn_bb_new))) ; } pub type RAnalCallbacks = r_anal_callbacks_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_options_t { pub depth : :: std :: os :: raw :: c_int , pub graph_depth : :: std :: os :: raw :: c_int , pub vars : bool , pub varname_stack : bool , pub var_newstack : bool , pub cjmpref : :: std :: os :: raw :: c_int , pub jmpref : :: std :: os :: raw :: c_int , pub jmpabove : :: std :: os :: raw :: c_int , pub ijmp : bool , pub jmpmid : bool , pub loads : bool , pub ignbithints : bool , pub followdatarefs : :: std :: os :: raw :: c_int , pub searchstringrefs : :: std :: os :: raw :: c_int , pub followbrokenfcnsrefs : :: std :: os :: raw :: c_int , pub bb_max_size : :: std :: os :: raw :: c_int , pub trycatch : bool , pub norevisit : bool , pub recont : :: std :: os :: raw :: c_int , pub noncode : :: std :: os :: raw :: c_int , pub nopskip : bool , pub hpskip : :: std :: os :: raw :: c_int , pub jmptbl : :: std :: os :: raw :: c_int , pub nonull : :: std :: os :: raw :: c_int , pub pushret : bool , pub armthumb : bool , pub delay : bool , pub tailcall : bool , pub tailcall_delta : :: std :: os :: raw :: c_int , pub retpoline : bool , pub propagate_noreturn : bool , pub recursive_noreturn : bool , pub slow : bool , pub flagends : bool , pub zigndups : bool , pub icods : bool , pub tparser : * mut :: std :: os :: raw :: c_char , pub dynprefix : bool , pub defprefix : * const :: std :: os :: raw :: c_char , pub prefix_marker : * const :: std :: os :: raw :: c_char , pub prefix_radius : u64 , } # [test] fn bindgen_test_layout_r_anal_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_options_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_anal_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_depth) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (graph_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varname_stack) as usize - ptr as usize } , 9usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (varname_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . var_newstack) as usize - ptr as usize } , 10usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (var_newstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cjmpref) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (cjmpref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpref) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpref))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpabove) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpabove))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ijmp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (ijmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmpmid) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmpmid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loads) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (loads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ignbithints) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (ignbithints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . followdatarefs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (followdatarefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . searchstringrefs) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (searchstringrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . followbrokenfcnsrefs) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (followbrokenfcnsrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_max_size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (bb_max_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trycatch) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (trycatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . norevisit) as usize - ptr as usize } , 45usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (norevisit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recont) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (recont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . noncode) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (noncode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nopskip) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (nopskip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hpskip) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (hpskip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmptbl) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (jmptbl))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nonull) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (nonull))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pushret) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (pushret))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . armthumb) as usize - ptr as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (armthumb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delay) as usize - ptr as usize } , 74usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (delay))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tailcall) as usize - ptr as usize } , 75usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tailcall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tailcall_delta) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tailcall_delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retpoline) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (retpoline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . propagate_noreturn) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (propagate_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recursive_noreturn) as usize - ptr as usize } , 82usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (recursive_noreturn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slow) as usize - ptr as usize } , 83usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (slow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flagends) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (flagends))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zigndups) as usize - ptr as usize } , 85usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (zigndups))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . icods) as usize - ptr as usize } , 86usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (icods))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparser) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (tparser))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dynprefix) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (dynprefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defprefix) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (defprefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix_marker) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (prefix_marker))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix_radius) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_options_t) , "::" , stringify ! (prefix_radius))) ; } impl Default for r_anal_options_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalOptions = r_anal_options_t ; pub const RAnalCPPABI_R_ANAL_CPP_ABI_ITANIUM : RAnalCPPABI = 0 ; pub const RAnalCPPABI_R_ANAL_CPP_ABI_MSVC : RAnalCPPABI = 1 ; pub type RAnalCPPABI = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_anal_hint_cb_t { pub on_bits : :: std :: option :: Option < unsafe extern "C" fn (a : * mut r_anal_t , addr : u64 , bits : :: std :: os :: raw :: c_int , set : bool) > , } # [test] fn bindgen_test_layout_r_anal_hint_cb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_hint_cb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_hint_cb_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_anal_hint_cb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_hint_cb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_hint_cb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . on_bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_hint_cb_t) , "::" , stringify ! (on_bits))) ; } pub type RHintCb = r_anal_hint_cb_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_thread_t { pub id : :: std :: os :: raw :: c_int , pub map : :: std :: os :: raw :: c_int , pub birth : u64 , pub reg : * mut RReg , } # [test] fn bindgen_test_layout_r_anal_thread_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_thread_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_thread_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_thread_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_thread_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_thread_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (map))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . birth) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (birth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_thread_t) , "::" , stringify ! (reg))) ; } impl Default for r_anal_thread_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalThread = r_anal_thread_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RAnalBacktraces { pub priv_ : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_RAnalBacktraces () { const UNINIT : :: std :: mem :: MaybeUninit < RAnalBacktraces > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RAnalBacktraces > () , 8usize , concat ! ("Size of: " , stringify ! (RAnalBacktraces))) ; assert_eq ! (:: std :: mem :: align_of :: < RAnalBacktraces > () , 8usize , concat ! ("Alignment of " , stringify ! (RAnalBacktraces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RAnalBacktraces) , "::" , stringify ! (priv_))) ; } impl Default for RAnalBacktraces { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_ref_manager_t { _unused : [u8 ; 0] , } pub type RefManager = r_ref_manager_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_t { pub config : * mut RArchConfig , pub lineswidth : :: std :: os :: raw :: c_int , pub sleep : :: std :: os :: raw :: c_int , pub cxxabi : RAnalCPPABI , pub user : * mut :: std :: os :: raw :: c_void , pub gp : u64 , pub bb_tree : RBTree , pub fcns : * mut RList , pub ht_addr_fun : * mut [u64 ; 11usize] , pub ht_name_fun : * mut [u64 ; 11usize] , pub reg : * mut RReg , pub last_disasm_reg : * mut u8 , pub last_disasm_reg_size : :: std :: os :: raw :: c_int , pub syscall : * mut RSyscall , pub diff_ops : bool , pub diff_thbb : f64 , pub diff_thfcn : f64 , pub iob : RIOBind , pub flb : RFlagBind , pub flg_class_set : RFlagSet , pub flg_class_get : RFlagGet , pub flg_fcn_set : RFlagSet , pub binb : RBinBind , pub coreb : RCoreBind , pub maxreflines : :: std :: os :: raw :: c_int , pub esil_goto_limit : :: std :: os :: raw :: c_int , pub esil : * mut REsil , pub cur : * mut r_anal_plugin_t , pub arch : * mut RArch , pub limit : * mut RAnalRange , pub plugins : * mut RList , pub sdb_types : * mut Sdb , pub sdb_fmts : * mut Sdb , pub sdb_zigns : * mut Sdb , pub rm : * mut RefManager , pub zign_spaces : RSpaces , pub zign_path : * mut :: std :: os :: raw :: c_char , pub cb_printf : PrintfCallback , pub print : * mut RPrint , pub sdb : * mut Sdb , pub sdb_pins : * mut Sdb , pub addr_hints : * mut [u64 ; 11usize] , pub arch_hints : RBTree , pub bits_hints : RBTree , pub hint_cbs : RHintCb , pub meta : RIntervalTree , pub meta_spaces : RSpaces , pub sdb_cc : * mut Sdb , pub sdb_classes : * mut Sdb , pub sdb_classes_attrs : * mut Sdb , pub cb : RAnalCallbacks , pub opt : RAnalOptions , pub reflines : * mut RList , pub reflines2 : * mut RList , pub columnSort : RListComparator , pub stackptr : :: std :: os :: raw :: c_int , pub log : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut r_anal_t , msg : * const :: std :: os :: raw :: c_char) -> bool > , pub read_at : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut r_anal_t , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub verbose : bool , pub flag_get : RFlagGetAtAddr , pub ev : * mut REvent , pub imports : * mut RList , pub visited : * mut SetU , pub constpool : RStrConstPool , pub leaddrs : * mut RList , pub pincmd : * mut :: std :: os :: raw :: c_char , pub btstore : RAnalBacktraces , pub lock : * mut RThreadLock , pub eligible : * mut RList , pub cmpval : u64 , pub lea_jmptbl_ip : u64 , pub cs_obits : :: std :: os :: raw :: c_int , pub cs_omode : :: std :: os :: raw :: c_int , pub cs_handle : usize , pub thread : :: std :: os :: raw :: c_int , pub threads : * mut RList , pub tracetagcolors : [RColor ; 64usize] , pub is_dirty : bool , } # [test] fn bindgen_test_layout_r_anal_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_t > () , 2000usize , concat ! ("Size of: " , stringify ! (r_anal_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lineswidth) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lineswidth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sleep) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sleep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cxxabi) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cxxabi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (gp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bb_tree) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (bb_tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcns) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (fcns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_addr_fun) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ht_addr_fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_name_fun) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ht_name_fun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_disasm_reg) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (last_disasm_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last_disasm_reg_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (last_disasm_reg_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_ops) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_ops))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_thbb) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_thbb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_thfcn) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (diff_thfcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flb) as usize - ptr as usize } , 424usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_class_set) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_class_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_class_get) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_class_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flg_fcn_set) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flg_fcn_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binb) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (binb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxreflines) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (maxreflines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil_goto_limit) as usize - ptr as usize } , 804usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (esil_goto_limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . limit) as usize - ptr as usize } , 832usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (limit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 840usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_types) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_fmts) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_fmts))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_zigns) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_zigns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rm) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (rm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zign_spaces) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (zign_spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zign_path) as usize - ptr as usize } , 920usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (zign_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 928usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print) as usize - ptr as usize } , 936usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (print))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 944usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_pins) as usize - ptr as usize } , 952usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_pins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_hints) as usize - ptr as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (addr_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch_hints) as usize - ptr as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (arch_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits_hints) as usize - ptr as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (bits_hints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hint_cbs) as usize - ptr as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (hint_cbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta_spaces) as usize - ptr as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (meta_spaces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_cc) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_classes) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_classes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb_classes_attrs) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (sdb_classes_attrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opt) as usize - ptr as usize } , 1104usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (opt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflines) as usize - ptr as usize } , 1232usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reflines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reflines2) as usize - ptr as usize } , 1240usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (reflines2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . columnSort) as usize - ptr as usize } , 1248usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (columnSort))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 1256usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 1264usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_at) as usize - ptr as usize } , 1272usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (read_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 1280usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag_get) as usize - ptr as usize } , 1288usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (flag_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 1296usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imports) as usize - ptr as usize } , 1304usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (imports))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visited) as usize - ptr as usize } , 1312usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (visited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constpool) as usize - ptr as usize } , 1320usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (constpool))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . leaddrs) as usize - ptr as usize } , 1328usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (leaddrs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pincmd) as usize - ptr as usize } , 1336usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (pincmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btstore) as usize - ptr as usize } , 1344usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (btstore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 1352usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eligible) as usize - ptr as usize } , 1360usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (eligible))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpval) as usize - ptr as usize } , 1368usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cmpval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lea_jmptbl_ip) as usize - ptr as usize } , 1376usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (lea_jmptbl_ip))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_obits) as usize - ptr as usize } , 1384usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_obits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_omode) as usize - ptr as usize } , 1388usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_omode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cs_handle) as usize - ptr as usize } , 1392usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (cs_handle))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 1400usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 1408usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracetagcolors) as usize - ptr as usize } , 1416usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (tracetagcolors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_dirty) as usize - ptr as usize } , 1992usize , concat ! ("Offset of field: " , stringify ! (r_anal_t) , "::" , stringify ! (is_dirty))) ; } impl Default for r_anal_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnal = r_anal_t ; pub type RAnalLabelAt = :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , arg1 : u64) -> * const :: std :: os :: raw :: c_char > ; pub const RAnalVarKind_R_ANAL_VAR_KIND_REG : RAnalVarKind = 114 ; pub const RAnalVarKind_R_ANAL_VAR_KIND_BPV : RAnalVarKind = 98 ; pub const RAnalVarKind_R_ANAL_VAR_KIND_SPV : RAnalVarKind = 115 ; pub type RAnalVarKind = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_access_t { pub reg : * const :: std :: os :: raw :: c_char , pub offset : i64 , pub stackptr : i64 , pub type_ : u8 , } # [test] fn bindgen_test_layout_r_anal_var_access_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_access_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_access_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_var_access_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_access_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_access_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_access_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_var_access_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVarAccess = r_anal_var_access_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_constraint_t { pub cond : RAnalCondType , pub val : u64 , } # [test] fn bindgen_test_layout_r_anal_var_constraint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_constraint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_constraint_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_anal_var_constraint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_constraint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_constraint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_constraint_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . val) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_constraint_t) , "::" , stringify ! (val))) ; } impl Default for r_anal_var_constraint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVarConstraint = r_anal_var_constraint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_var_t { pub fcn : * mut RAnalFunction , pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub kind : RAnalVarKind , pub isarg : bool , pub delta : :: std :: os :: raw :: c_int , pub regname : * mut :: std :: os :: raw :: c_char , pub accesses : RVector , pub comment : * mut :: std :: os :: raw :: c_char , pub constraints : RVector , pub argnum : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_var_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_var_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_var_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_anal_var_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_var_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_var_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcn) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kind) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (kind))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . isarg) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (isarg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regname) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (regname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . accesses) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (accesses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . constraints) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (constraints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . argnum) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_var_t) , "::" , stringify ! (argnum))) ; } impl Default for r_anal_var_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVar = r_anal_var_t ; extern "C" { pub fn r_anal_get_fcn_in (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_get_fcn_in_bounds (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_var_all_list (anal : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_function_get_var_fields (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_get_used_function_var (anal : * mut RAnal , addr : u64) -> * mut RAnalVar ; } pub type RAnalGetFcnIn = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) -> * mut RAnalFunction > ; pub type RAnalGetHint = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64) -> * mut RAnalHint > ; pub type RAnalMnemonics = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalEncode = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , s : * const :: std :: os :: raw :: c_char , data : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; pub type RAnalDecode = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int > ; pub type RAnalOpInit = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnalOp) > ; pub type RAnalOpFini = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnalOp) > ; pub type RAnalUse = :: std :: option :: Option < unsafe extern "C" fn (op : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_bind_t { pub anal : * mut RAnal , pub get_fcn_in : RAnalGetFcnIn , pub get_hint : RAnalGetHint , pub mnemonics : RAnalMnemonics , pub encode : RAnalEncode , pub decode : RAnalDecode , pub opinit : RAnalOpInit , pub opfini : RAnalOpFini , pub use_ : RAnalUse , } # [test] fn bindgen_test_layout_r_anal_bind_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_bind_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_bind_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_anal_bind_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_bind_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_bind_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_fcn_in) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (get_fcn_in))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_hint) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (get_hint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mnemonics) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (mnemonics))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . encode) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (encode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . decode) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (decode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opinit) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (opinit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opfini) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (opfini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_bind_t) , "::" , stringify ! (use_))) ; } impl Default for r_anal_bind_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBind = r_anal_bind_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_cond_t { pub type_ : :: std :: os :: raw :: c_int , pub left : * mut RArchValue , pub right : * mut RArchValue , } # [test] fn bindgen_test_layout_r_anal_cond_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_cond_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_cond_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_cond_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_cond_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_cond_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . left) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (left))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . right) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_cond_t) , "::" , stringify ! (right))) ; } impl Default for r_anal_cond_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalCond = r_anal_cond_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_bb_t { pub _rb : RBNode , pub _max_end : u64 , pub addr : u64 , pub size : u64 , pub jump : u64 , pub fail : u64 , pub traced : u64 , pub folded : bool , pub color : RColor , pub fingerprint : * mut u8 , pub diff : * mut RAnalDiff , pub cond : * mut RAnalCond , pub switch_op : * mut RAnalSwitchOp , pub op_bytes : * mut u8 , pub parent_reg_arena : * mut u8 , pub parent_reg_arena_size : :: std :: os :: raw :: c_int , pub op_pos : * mut u16 , pub op_pos_size : :: std :: os :: raw :: c_int , pub ninstr : :: std :: os :: raw :: c_int , pub stackptr : :: std :: os :: raw :: c_int , pub parent_stackptr : :: std :: os :: raw :: c_int , pub cmpval : u64 , pub cmpreg : * const :: std :: os :: raw :: c_char , pub bbhash : u32 , pub fcns : * mut RList , pub anal : * mut RAnal , pub esil : * mut :: std :: os :: raw :: c_char , pub ref_ : :: std :: os :: raw :: c_int , pub depth : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_anal_bb_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_bb_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_bb_t > () , 232usize , concat ! ("Size of: " , stringify ! (r_anal_bb_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_bb_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_bb_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _rb) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (_rb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _max_end) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (_max_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jump) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (jump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fail) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traced) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (traced))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . folded) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (folded))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 81usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fingerprint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (diff))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_op) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (switch_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_bytes) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_reg_arena) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_reg_arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_reg_arena_size) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_reg_arena_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_pos) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_pos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op_pos_size) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (op_pos_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninstr) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (ninstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackptr) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parent_stackptr) as usize - ptr as usize } , 172usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (parent_stackptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpval) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cmpval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmpreg) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (cmpreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbhash) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (bbhash))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcns) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (fcns))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ref_) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (ref_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depth) as usize - ptr as usize } , 228usize , concat ! ("Offset of field: " , stringify ! (r_anal_bb_t) , "::" , stringify ! (depth))) ; } impl Default for r_anal_bb_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBlock = r_anal_bb_t ; pub const RAnalRefType_R_ANAL_REF_TYPE_NULL : RAnalRefType = 0 ; pub const RAnalRefType_R_ANAL_REF_TYPE_ERROR : RAnalRefType = 1 ; pub const RAnalRefType_R_ANAL_REF_TYPE_CODE : RAnalRefType = 99 ; pub const RAnalRefType_R_ANAL_REF_TYPE_CALL : RAnalRefType = 67 ; pub const RAnalRefType_R_ANAL_REF_TYPE_JUMP : RAnalRefType = 106 ; pub const RAnalRefType_R_ANAL_REF_TYPE_DATA : RAnalRefType = 100 ; pub const RAnalRefType_R_ANAL_REF_TYPE_ICOD : RAnalRefType = 105 ; pub const RAnalRefType_R_ANAL_REF_TYPE_STRN : RAnalRefType = 115 ; pub const RAnalRefType_R_ANAL_REF_TYPE_MASK : RAnalRefType = 255 ; pub const RAnalRefType_R_ANAL_REF_TYPE_READ : RAnalRefType = 1024 ; pub const RAnalRefType_R_ANAL_REF_TYPE_WRITE : RAnalRefType = 512 ; pub const RAnalRefType_R_ANAL_REF_TYPE_EXEC : RAnalRefType = 256 ; pub const RAnalRefType_R_ANAL_REF_PERM_MASK : RAnalRefType = 65280 ; pub const RAnalRefType_R_ANAL_REF_DIRECTION_MASK : RAnalRefType = 65280 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_1 : RAnalRefType = 65536 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_2 : RAnalRefType = 131072 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_4 : RAnalRefType = 262144 ; pub const RAnalRefType_R_ANAL_REF_TYPE_SIZE_8 : RAnalRefType = 524288 ; pub const RAnalRefType_R_ANAL_REF_SIZE_MASK : RAnalRefType = 16711680 ; pub type RAnalRefType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_ref_t { pub at : u64 , pub addr : u64 , pub type_ : RAnalRefType , } # [test] fn bindgen_test_layout_r_anal_ref_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_ref_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_ref_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_ref_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_ref_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_ref_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . at) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_ref_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_ref_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalRef = r_anal_ref_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecAnalRef_t { _unused : [u8 ; 0] , } pub type RVecAnalRef = r_vec_RVecAnalRef_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_cycle_frame_t { pub naddr : u64 , pub hooks : * mut RList , pub prev : * mut r_anal_cycle_frame_t , } # [test] fn bindgen_test_layout_r_anal_cycle_frame_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_cycle_frame_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_cycle_frame_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_cycle_frame_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_cycle_frame_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_cycle_frame_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . naddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (naddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hooks) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (hooks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_cycle_frame_t) , "::" , stringify ! (prev))) ; } impl Default for r_anal_cycle_frame_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalCycleFrame = r_anal_cycle_frame_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_cfg_t { pub start : * mut RGraphNode , pub end : * mut RGraphNode , pub g : * mut RGraph , } # [test] fn bindgen_test_layout_r_anal_esil_cfg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_cfg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_cfg_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_esil_cfg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_cfg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_cfg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . g) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_cfg_t) , "::" , stringify ! (g))) ; } impl Default for r_anal_esil_cfg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilCFG = r_anal_esil_cfg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_dfg_t { pub idx : u32 , pub fd : :: std :: os :: raw :: c_int , pub iob : RIOBind , pub reg : * mut RReg , pub regs : * mut Sdb , pub vars : * mut RRBTree , pub todo : * mut RQueue , pub insert : * mut :: std :: os :: raw :: c_void , pub flow : * mut RGraph , pub cur : * mut RGraphNode , pub old : * mut RGraphNode , pub esil : * mut REsil , pub use_map_info : bool , pub use_maps : bool , pub malloc_failed : bool , } # [test] fn bindgen_test_layout_r_anal_esil_dfg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_dfg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_dfg_t > () , 384usize , concat ! ("Size of: " , stringify ! (r_anal_esil_dfg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_dfg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_dfg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . todo) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . insert) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (insert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flow) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (flow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old) as usize - ptr as usize } , 360usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (old))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 368usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_map_info) as usize - ptr as usize } , 376usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (use_map_info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_maps) as usize - ptr as usize } , 377usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (use_maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . malloc_failed) as usize - ptr as usize } , 378usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_t) , "::" , stringify ! (malloc_failed))) ; } impl Default for r_anal_esil_dfg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilDFG = r_anal_esil_dfg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_esil_dfg_node_t { pub idx : u32 , pub content : * mut RStrBuf , pub type_ : u32 , } # [test] fn bindgen_test_layout_r_anal_esil_dfg_node_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_esil_dfg_node_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_esil_dfg_node_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_esil_dfg_node_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_esil_dfg_node_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_esil_dfg_node_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . idx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (content))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_esil_dfg_node_t) , "::" , stringify ! (type_))) ; } impl Default for r_anal_esil_dfg_node_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalEsilDFGNode = r_anal_esil_dfg_node_t ; pub type RAnalCmdCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , input : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RAnalOpFlow { pub jmptbl_found : bool , } # [test] fn bindgen_test_layout_RAnalOpFlow () { const UNINIT : :: std :: mem :: MaybeUninit < RAnalOpFlow > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RAnalOpFlow > () , 1usize , concat ! ("Size of: " , stringify ! (RAnalOpFlow))) ; assert_eq ! (:: std :: mem :: align_of :: < RAnalOpFlow > () , 1usize , concat ! ("Alignment of " , stringify ! (RAnalOpFlow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmptbl_found) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RAnalOpFlow) , "::" , stringify ! (jmptbl_found))) ; } pub type RAnalOpCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int > ; pub type RAnalOpFlowCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , op : * mut RAnalOp) -> RAnalOpFlow > ; pub type RAnalPluginEligible = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > ; pub type RAnalFPBBCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , bb : * mut RAnalBlock) -> :: std :: os :: raw :: c_int > ; pub type RAnalFPFcnCallback = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffBBCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn2 : * mut RAnalFunction) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffFcnCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , fcns : * mut RList , fcns2 : * mut RList) -> :: std :: os :: raw :: c_int > ; pub type RAnalDiffEvalCallback = :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal) -> :: std :: os :: raw :: c_int > ; pub type RAnalTypesParser = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalTypesParserFile = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char , dir : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAnalTypesParserText = :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_plugin_t { pub meta : RPluginMeta , pub depends : * const :: std :: os :: raw :: c_char , pub init : :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (a : * mut RAnal) -> bool > , pub eligible : RAnalPluginEligible , pub op : RAnalOpCallback , pub cmd : RAnalCmdCallback , pub opflow : RAnalOpFlowCallback , pub tparse_text : RAnalTypesParserText , pub tparse_file : RAnalTypesParserFile , pub tdump : RAnalTypesParser , # [doc = " XXX unused but referenced, maybe worth checking in case we want them for anal"] pub fingerprint_bb : RAnalFPBBCallback , pub fingerprint_fcn : RAnalFPFcnCallback , pub diff_bb : RAnalDiffBBCallback , pub diff_fcn : RAnalDiffFcnCallback , pub diff_eval : RAnalDiffEvalCallback , } # [test] fn bindgen_test_layout_r_anal_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_plugin_t > () , 184usize , concat ! ("Size of: " , stringify ! (r_anal_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . depends) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (depends))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . eligible) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (eligible))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . op) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . opflow) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (opflow))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparse_text) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tparse_text))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tparse_file) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tparse_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tdump) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (tdump))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_bb) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fingerprint_bb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fingerprint_fcn) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (fingerprint_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_bb) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_bb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_fcn) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_fcn))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . diff_eval) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_anal_plugin_t) , "::" , stringify ! (diff_eval))) ; } impl Default for r_anal_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalPlugin = r_anal_plugin_t ; extern "C" { pub fn r_anal_compare (arg1 : RAnalFunction , arg2 : RAnalFunction) -> * mut :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_value_to_ut64 (anal : * mut RAnal , val : * mut RArchValue) -> u64 ; } extern "C" { pub fn r_anal_value_set_ut64 (anal : * mut RAnal , val : * mut RArchValue , num : u64) -> bool ; } extern "C" { pub fn r_listrange_new () -> * mut RListRange ; } extern "C" { pub fn r_listrange_free (s : * mut RListRange) ; } extern "C" { pub fn r_listrange_add (s : * mut RListRange , f : * mut RAnalFunction) ; } extern "C" { pub fn r_listrange_del (s : * mut RListRange , f : * mut RAnalFunction) ; } extern "C" { pub fn r_listrange_resize (s : * mut RListRange , f : * mut RAnalFunction , newsize : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_listrange_find_in_range (s : * mut RListRange , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_listrange_find_root (s : * mut RListRange , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_type_new () -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_add (l : * mut RAnal , t : * mut RAnalType) ; } extern "C" { pub fn r_anal_type_find (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_list (a : * mut RAnal , category : :: std :: os :: raw :: c_short , enabled : :: std :: os :: raw :: c_short) ; } extern "C" { pub fn r_anal_datatype_tostring (t : RAnalDataType) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_str_to_type (a : * mut RAnal , s : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_free (t : * mut RAnalType) -> * mut RAnalType ; } extern "C" { pub fn r_anal_type_loadfile (a : * mut RAnal , path : * const :: std :: os :: raw :: c_char) -> * mut RAnalType ; } extern "C" { pub fn r_anal_cmd (a : * mut RAnal , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } pub type RAnalBlockCb = :: std :: option :: Option < unsafe extern "C" fn (block : * mut RAnalBlock , user : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RAnalAddrCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_block_ref (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_unref (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_reset (a : * mut RAnal) ; } extern "C" { pub fn r_anal_create_block (anal : * mut RAnal , addr : u64 , size : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_split (bb : * mut RAnalBlock , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_merge (a : * mut RAnalBlock , b : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_delete_block (bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_delete_block_at (anal : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_block_set_size (block : * mut RAnalBlock , size : u64) ; } extern "C" { pub fn r_anal_block_relocate (block : * mut RAnalBlock , addr : u64 , size : u64) -> bool ; } extern "C" { pub fn r_anal_block_ninstr (block : * mut RAnalBlock , pos : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_get_block_at (anal : * mut RAnal , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_blocks_foreach_in (anal : * mut RAnal , addr : u64 , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_get_blocks_in (anal : * mut RAnal , addr : u64) -> * mut RList ; } extern "C" { pub fn r_anal_blocks_foreach_intersect (anal : * mut RAnal , addr : u64 , size : u64 , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_get_blocks_intersect (anal : * mut RAnal , addr : u64 , size : u64) -> * mut RList ; } extern "C" { pub fn r_anal_block_successor_addrs_foreach (block : * mut RAnalBlock , cb : RAnalAddrCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse (block : * mut RAnalBlock , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_followthrough (block : * mut RAnalBlock , cb : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_depth_first (block : * mut RAnalBlock , cb : RAnalBlockCb , on_exit : RAnalBlockCb , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_anal_block_recurse_list (block : * mut RAnalBlock) -> * mut RList ; } extern "C" { pub fn r_anal_block_shortest_path (block : * mut RAnalBlock , dst : u64) -> * mut RList ; } extern "C" { pub fn r_anal_block_add_switch_case (block : * mut RAnalBlock , switch_addr : u64 , case_value : u64 , case_addr : u64) ; } extern "C" { pub fn r_anal_block_chop_noreturn (block : * mut RAnalBlock , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_block_automerge (blocks : * mut RList) ; } extern "C" { pub fn r_anal_block_op_starts_at (block : * mut RAnalBlock , addr : u64) -> bool ; } extern "C" { pub fn r_anal_block_update_hash (block : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_block_was_modified (block : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_function_new (anal : * mut RAnal) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_free (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_add_function (anal : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_create_function (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64 , type_ : :: std :: os :: raw :: c_int , diff : * mut RAnalDiff) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_get_functions_in (anal : * mut RAnal , addr : u64) -> * mut RList ; } extern "C" { pub fn r_anal_get_function_at (anal : * mut RAnal , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_delete (anal : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_relocate (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_rename (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_function_add_block (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_function_remove_block (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) ; } extern "C" { pub fn r_anal_function_linear_size (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_min_addr (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_max_addr (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_size_from_entry (fcn : * mut RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_realsize (fcn : * const RAnalFunction) -> u64 ; } extern "C" { pub fn r_anal_function_contains (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_was_modified (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_get_graph (fcn : * mut RAnalFunction , node_ptr : * mut * mut RGraphNode , addr : u64) -> * mut RGraph ; } extern "C" { pub fn r_anal_new () -> * mut RAnal ; } extern "C" { pub fn r_anal_purge (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_free (r : * mut RAnal) ; } extern "C" { pub fn r_anal_set_user_ptr (anal : * mut RAnal , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_plugin_free (p : * mut RAnalPlugin) ; } extern "C" { pub fn r_anal_plugin_add (anal : * mut RAnal , plugin : * mut RAnalPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_plugin_remove (anal : * mut RAnal , plugin : * mut RAnalPlugin) -> bool ; } extern "C" { pub fn r_anal_archinfo (anal : * mut RAnal , query : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_is_aligned (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_anal_use (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_set_reg_profile (anal : * mut RAnal , rp : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_get_reg_profile (anal : * mut RAnal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_get_bbaddr (anal : * mut RAnal , addr : u64) -> u64 ; } extern "C" { pub fn r_anal_set_bits (anal : * mut RAnal , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_set_os (anal : * mut RAnal , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_mask (anal : * mut RAnal , size : :: std :: os :: raw :: c_int , data : * const u8 , at : u64) -> * mut u8 ; } extern "C" { pub fn r_anal_trace_bb (anal : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_functiontype_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_coverage (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , depth : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_bind (b : * mut RAnal , bnd : * mut RAnalBind) ; } extern "C" { pub fn r_anal_set_triplet (anal : * mut RAnal , os : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_add_import (anal : * mut RAnal , imp : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_remove_import (anal : * mut RAnal , imp : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_purge_imports (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_bb_from_offset (anal : * mut RAnal , off : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_bb_set_offset (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int , v : u16) -> bool ; } extern "C" { pub fn r_anal_bb_offset_inst (bb : * const RAnalBlock , i : :: std :: os :: raw :: c_int) -> u16 ; } extern "C" { pub fn r_anal_bb_opaddr_i (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_bb_opaddr_at (bb : * mut RAnalBlock , addr : u64) -> u64 ; } extern "C" { pub fn r_anal_bb_size_i (bb : * mut RAnalBlock , i : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_anal_stackop_tostring (s : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_new () -> * mut RAnalOp ; } extern "C" { pub fn r_anal_op_fini (op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_mnemonics (anal : * mut RAnal , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_op_reg_delta (anal : * mut RAnal , addr : u64 , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_is_eob (op : * mut RAnalOp) -> bool ; } extern "C" { pub fn r_anal_op (anal : * mut RAnal , op : * mut RAnalOp , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int , mask : RAnalOpMask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_opasm (anal : * mut RAnal , pc : u64 , s : * const :: std :: os :: raw :: c_char , outbuf : * mut u8 , outlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_op_tostring (anal : * mut RAnal , op : * mut RAnalOp) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_init (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin_fini (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin (a : * mut RAnal , addr : u64 , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_pin_call (a : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_list (a : * mut RAnal) ; } extern "C" { pub fn r_anal_pin_unset (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_function_cost (fcn : * mut RAnalFunction) -> u32 ; } extern "C" { pub fn r_anal_function_count_edges (fcn : * const RAnalFunction , ebbs : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_get_function_byname (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , reftype : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_del (anal : * mut RAnal , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_add_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64 , size : u64 , jump : u64 , fail : u64 , diff : * mut RAnalDiff) -> bool ; } extern "C" { pub fn r_anal_check_fcn (anal : * mut RAnal , buf : * mut u8 , bufsz : u16 , addr : u64 , low : u64 , high : u64) -> bool ; } extern "C" { pub fn r_anal_function_check_bp_use (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_update_analysis_range (anal : * mut RAnal , addr : u64 , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_function_update_analysis (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_var_del_byindex (a : * mut RAnal , fna : u64 , kind : :: std :: os :: raw :: c_char , scope : :: std :: os :: raw :: c_int , idx : u32) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count (a : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_all (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_args (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_count_locals (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_var_display (anal : * mut RAnal , var : * mut RAnalVar) -> bool ; } extern "C" { pub fn r_anal_function_complexity (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_loops (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_trim_jmprefs (anal : * mut RAnal , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_del_jmprefs (anal : * mut RAnal , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_next (anal : * mut RAnal , addr : u64) -> * mut RAnalFunction ; } extern "C" { pub fn r_anal_function_get_signature (function : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_del_signature (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_str_to_fcn (a : * mut RAnal , f : * mut RAnalFunction , _str : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_count (a : * mut RAnal , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_bbget_in (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_function_bbget_at (anal : * mut RAnal , fcn : * mut RAnalFunction , addr : u64) -> * mut RAnalBlock ; } extern "C" { pub fn r_anal_function_bbadd (fcn : * mut RAnalFunction , bb : * mut RAnalBlock) -> bool ; } extern "C" { pub fn r_anal_function_resize (fcn : * mut RAnalFunction , newsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_purity (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_instrcount (fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_function_islineal (fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_pin_get (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_at (a : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_fcn_prefix_at (anal : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_pin_set (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_ref_list_new () -> * mut RList ; } extern "C" { pub fn r_anal_ref_type_tostring (t : RAnalRefType) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_size (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_ref_typemask (x : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_xrefs_type (ch : :: std :: os :: raw :: c_char) -> RAnalRefType ; } extern "C" { pub fn r_anal_ref_perm_tostring (ref_ : * mut RAnalRef) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_perm_tochar (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_ref_permchar_tostring (ref_ : * mut RAnalRef) -> :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_xrefs_init (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_xrefs_free (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_xrefs_type_from_string (s : * const :: std :: os :: raw :: c_char) -> RAnalRefType ; } extern "C" { pub fn r_anal_xrefs_get (anal : * mut RAnal , to : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_refs_get (anal : * mut RAnal , from : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_has_xrefs_at (anal : * mut RAnal , at : u64) -> bool ; } extern "C" { pub fn r_anal_xrefs_get_from (anal : * mut RAnal , to : u64) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_list (anal : * mut RAnal , rad : :: std :: os :: raw :: c_int , arg : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_anal_xrefs_count (anal : * mut RAnal) -> u64 ; } extern "C" { pub fn r_anal_xrefs_count_at (anal : * mut RAnal , to : u64) -> u64 ; } extern "C" { pub fn r_anal_function_get_refs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_function_get_all_xrefs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_function_get_xrefs (fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_anal_xrefs_set (anal : * mut RAnal , from : u64 , to : u64 , type_ : RAnalRefType) -> bool ; } extern "C" { pub fn r_anal_xref_del (anal : * mut RAnal , from : u64 , to : u64) -> bool ; } extern "C" { pub fn r_anal_get_fcns (anal : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_anal_remove_parsed_type (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_save_parsed_type (anal : * mut RAnal , parsed : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_function_autoname_var (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_char , pfx : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_set_var (fcn : * mut RAnalFunction , delta : :: std :: os :: raw :: c_int , kind : :: std :: os :: raw :: c_char , type_ : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , isarg : bool , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_function_set_var_prot (fcn : * mut RAnalFunction , l : * mut RList) -> bool ; } extern "C" { pub fn r_anal_function_get_var (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_char , delta : :: std :: os :: raw :: c_int) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_var_deserialize (ser : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_anal_var_prot_serialize (l : * mut RList , spaces : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_var_get_prots (fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_function_get_var_byname (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalVar ; } extern "C" { pub fn r_anal_function_delete_vars_by_kind (fcn : * mut RAnalFunction , kind : RAnalVarKind) ; } extern "C" { pub fn r_anal_function_delete_all_vars (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_delete_unused_vars (fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_delete_var (fcn : * mut RAnalFunction , var : * mut RAnalVar) ; } extern "C" { pub fn r_anal_function_rebase_vars (a : * mut RAnal , fcn : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_function_get_var_stackptr_at (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> i64 ; } extern "C" { pub fn r_anal_function_get_var_reg_at (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_get_vars_used_at (fcn : * mut RAnalFunction , op_addr : u64) -> * mut RPVector ; } extern "C" { pub fn r_anal_var_rename (anal : * mut RAnal , var : * mut RAnalVar , new_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_var_set_type (anal : * mut RAnal , var : * mut RAnalVar , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_var_delete (anal : * mut RAnal , var : * mut RAnalVar) -> bool ; } extern "C" { pub fn r_anal_var_addr (var : * mut RAnalVar) -> u64 ; } extern "C" { pub fn r_anal_var_set_access (anal : * mut RAnal , var : * mut RAnalVar , reg : * const :: std :: os :: raw :: c_char , access_addr : u64 , access_type : :: std :: os :: raw :: c_int , stackptr : i64) -> bool ; } extern "C" { pub fn r_anal_var_remove_access_at (var : * mut RAnalVar , address : u64) ; } extern "C" { pub fn r_anal_var_clear_accesses (var : * mut RAnalVar) ; } extern "C" { pub fn r_anal_var_add_constraint (var : * mut RAnalVar , constraint : * mut RAnalVarConstraint) ; } extern "C" { pub fn r_anal_var_get_constraints_readable (var : * mut RAnalVar) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_var_get_access_at (var : * mut RAnalVar , addr : u64) -> * mut RAnalVarAccess ; } extern "C" { pub fn r_anal_var_get_argnum (var : * mut RAnalVar) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_extract_vars (anal : * mut RAnal , fcn : * mut RAnalFunction , op : * mut RAnalOp) ; } extern "C" { pub fn r_anal_extract_rarg (anal : * mut RAnal , op : * mut RAnalOp , fcn : * mut RAnalFunction , reg_set : * mut :: std :: os :: raw :: c_int , count : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_var_get_dst_var (var : * mut RAnalVar) -> * mut RAnalVar ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_function_vars_cache { pub bvars : * mut RList , pub rvars : * mut RList , pub svars : * mut RList , } # [test] fn bindgen_test_layout_r_anal_function_vars_cache () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_function_vars_cache > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_function_vars_cache > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_function_vars_cache))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_function_vars_cache > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_function_vars_cache))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bvars) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (bvars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rvars) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (rvars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . svars) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_function_vars_cache) , "::" , stringify ! (svars))) ; } impl Default for r_anal_function_vars_cache { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalFcnVarsCache = r_anal_function_vars_cache ; extern "C" { pub fn r_anal_function_vars_cache_init (anal : * mut RAnal , cache : * mut RAnalFcnVarsCache , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_anal_function_vars_cache_fini (cache : * mut RAnalFcnVarsCache) ; } extern "C" { pub fn r_anal_function_format_sig (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn_name : * mut :: std :: os :: raw :: c_char , reuse_cache : * mut RAnalFcnVarsCache , fcn_name_pre : * const :: std :: os :: raw :: c_char , fcn_name_post : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_diff_new () -> * mut RAnalDiff ; } extern "C" { pub fn r_anal_diff_setup (anal : * mut RAnal , doops : bool , thbb : f64 , thfcn : f64) ; } extern "C" { pub fn r_anal_diff_setup_i (anal : * mut RAnal , doops : bool , thbb : :: std :: os :: raw :: c_int , thfcn : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_diff_free (diff : * mut RAnalDiff) ; } extern "C" { pub fn r_anal_diff_fingerprint_bb (anal : * mut RAnal , bb : * mut RAnalBlock) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_diff_fingerprint_fcn (anal : * mut RAnal , fcn : * mut RAnalFunction) -> usize ; } extern "C" { pub fn r_anal_diff_bb (anal : * mut RAnal , fcn : * mut RAnalFunction , fcn2 : * mut RAnalFunction) -> bool ; } extern "C" { pub fn r_anal_diff_fcn (anal : * mut RAnal , fcns : * mut RList , fcns2 : * mut RList) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cond_new () -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_new_from_op (op : * mut RAnalOp) -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_fini (c : * mut RAnalCond) ; } extern "C" { pub fn r_anal_cond_free (c : * mut RAnalCond) ; } extern "C" { pub fn r_anal_cond_tostring (cond : * mut RAnalCond) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cond_eval (anal : * mut RAnal , cond : * mut RAnalCond) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cond_new_from_string (str_ : * const :: std :: os :: raw :: c_char) -> * mut RAnalCond ; } extern "C" { pub fn r_anal_cond_type_tostring (cc : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cond_typeexpr_tostring (cc : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_jmptbl (anal : * mut RAnal , fcn : * mut RAnalFunction , block : * mut RAnalBlock , jmpaddr : u64 , table : u64 , tablesize : u64 , default_addr : u64) -> bool ; } extern "C" { pub fn r_anal_jmptbl_list (anal : * mut RAnal , fcn : * mut RAnalFunction , bb : * mut RAnalBlock , saddr : u64 , jaddr : u64 , cases : * mut RList , loadsz : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_jmptbl_walk (analysis : * mut RAnal , fcn : * mut RAnalFunction , block : * mut RAnalBlock , depth : :: std :: os :: raw :: c_int , ip : u64 , start_casenum_shift : i64 , jmptbl_loc : u64 , jmptbl_off : u64 , sz : u64 , jmptbl_size : u64 , default_case : u64 , ret0 : bool) -> bool ; } extern "C" { pub fn r_anal_reflines_get (anal : * mut RAnal , addr : u64 , buf : * const u8 , len : u64 , nlines : :: std :: os :: raw :: c_int , linesout : :: std :: os :: raw :: c_int , linescall : :: std :: os :: raw :: c_int , splitmode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_reflines_middle (anal : * mut RAnal , list : * mut RList , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_reflines_str (core : * mut :: std :: os :: raw :: c_void , addr : u64 , opts : :: std :: os :: raw :: c_int) -> * mut RAnalRefStr ; } extern "C" { pub fn r_anal_reflines_str_free (refstr : * mut RAnalRefStr) ; } extern "C" { pub fn r_anal_var_list_show (anal : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , pj : * mut PJ) ; } extern "C" { pub fn r_anal_var_list (anal : * mut RAnal , fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_anal_cc_exist (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_cc_reset (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_cc_del (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_set (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_cc_get (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_once (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_cc_get_json (anal : * mut RAnal , pj : * mut PJ , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_arg (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , n : :: std :: os :: raw :: c_int , lastn : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_self (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_set_self (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , self_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_error (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_set_error (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char , error : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_max_arg (anal : * mut RAnal , cc : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_cc_ret (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cc_default (anal : * mut RAnal) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_set_cc_default (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_syscc_default (anal : * mut RAnal) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_set_syscc_default (anal : * mut RAnal , convention : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_cc_func (anal : * mut RAnal , func_name : * const :: std :: os :: raw :: c_char) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_noreturn_at (anal : * mut RAnal , addr : u64) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_data_t { pub addr : u64 , pub type_ : :: std :: os :: raw :: c_int , pub ptr : u64 , pub str_ : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub sbuf : [u8 ; 8usize] , } # [test] fn bindgen_test_layout_r_anal_data_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_data_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_data_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_anal_data_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_data_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_data_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . str_) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (str_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sbuf) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_anal_data_t) , "::" , stringify ! (sbuf))) ; } impl Default for r_anal_data_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalData = r_anal_data_t ; extern "C" { pub fn r_anal_data (anal : * mut RAnal , addr : u64 , buf : * const u8 , size : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_kind (anal : * mut RAnal , addr : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_data_type (a : * mut RAnal , da : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_data_new_string (addr : u64 , p : * const :: std :: os :: raw :: c_char , size : :: std :: os :: raw :: c_int , wide : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_new (addr : u64 , type_ : :: std :: os :: raw :: c_int , n : u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RAnalData ; } extern "C" { pub fn r_anal_data_free (d : * mut RAnalData) ; } extern "C" { pub fn r_anal_data_tostring (d : * mut RAnalData , pal : * mut RConsPrintablePalette) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_set (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , size : u64 , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_set_with_subtype (m : * mut RAnal , type_ : RAnalMetaType , subtype : :: std :: os :: raw :: c_int , addr : u64 , size : u64 , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_del (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , size : u64) ; } extern "C" { pub fn r_meta_set_string (a : * mut RAnal , type_ : RAnalMetaType , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_meta_get_string (a : * mut RAnal , type_ : RAnalMetaType , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_set_data_at (a : * mut RAnal , addr : u64 , wordsz : u64) ; } extern "C" { pub fn r_meta_get_at (a : * mut RAnal , addr : u64 , type_ : RAnalMetaType , size : * mut u64) -> * mut RAnalMetaItem ; } extern "C" { pub fn r_meta_get_in (a : * mut RAnal , addr : u64 , type_ : RAnalMetaType) -> * mut RIntervalNode ; } extern "C" { pub fn r_meta_get_all_at (a : * mut RAnal , at : u64) -> * mut RPVector ; } extern "C" { pub fn r_meta_get_all_in (a : * mut RAnal , at : u64 , type_ : RAnalMetaType) -> * mut RPVector ; } extern "C" { pub fn r_meta_get_all_intersect (a : * mut RAnal , start : u64 , size : u64 , type_ : RAnalMetaType) -> * mut RPVector ; } extern "C" { pub fn r_meta_space_unset_for (a : * mut RAnal , space : * const RSpace) ; } extern "C" { pub fn r_meta_space_count_for (a : * mut RAnal , space : * const RSpace) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_meta_rebase (anal : * mut RAnal , diff : u64) ; } extern "C" { pub fn r_meta_get_size (a : * mut RAnal , type_ : RAnalMetaType) -> u64 ; } extern "C" { pub fn r_meta_type_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_meta_print (a : * mut RAnal , d : * mut RAnalMetaItem , start : u64 , size : u64 , rad : :: std :: os :: raw :: c_int , pj : * mut PJ , t : * mut RTable , show_full : bool) ; } extern "C" { pub fn r_meta_print_list_all (a : * mut RAnal , type_ : :: std :: os :: raw :: c_int , rad : :: std :: os :: raw :: c_int , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_meta_print_list_at (a : * mut RAnal , addr : u64 , rad : :: std :: os :: raw :: c_int , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_meta_print_list_in_function (a : * mut RAnal , type_ : :: std :: os :: raw :: c_int , rad : :: std :: os :: raw :: c_int , addr : u64 , tq : * const :: std :: os :: raw :: c_char , t : * mut RTable) ; } extern "C" { pub fn r_anal_hint_del (anal : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_clear (a : * mut RAnal) ; } extern "C" { pub fn r_anal_hint_free (h : * mut RAnalHint) ; } extern "C" { pub fn r_anal_hint_set_syntax (a : * mut RAnal , addr : u64 , syn : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_type (a : * mut RAnal , addr : u64 , type_ : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_jump (a : * mut RAnal , addr : u64 , jump : u64) ; } extern "C" { pub fn r_anal_hint_set_fail (a : * mut RAnal , addr : u64 , fail : u64) ; } extern "C" { pub fn r_anal_hint_set_newbits (a : * mut RAnal , addr : u64 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_nword (a : * mut RAnal , addr : u64 , nword : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_offset (a : * mut RAnal , addr : u64 , typeoff : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_immbase (a : * mut RAnal , addr : u64 , base : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_set_size (a : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_set_opcode (a : * mut RAnal , addr : u64 , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_esil (a : * mut RAnal , addr : u64 , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_pointer (a : * mut RAnal , addr : u64 , ptr : u64) ; } extern "C" { pub fn r_anal_hint_set_ret (a : * mut RAnal , addr : u64 , val : u64) ; } extern "C" { pub fn r_anal_hint_set_high (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_set_stackframe (a : * mut RAnal , addr : u64 , size : u64) ; } extern "C" { pub fn r_anal_hint_set_val (a : * mut RAnal , addr : u64 , v : u64) ; } extern "C" { pub fn r_anal_hint_set_arch (a : * mut RAnal , addr : u64 , arch : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_hint_set_bits (a : * mut RAnal , addr : u64 , bits : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_hint_unset_val (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_high (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_immbase (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_nword (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_size (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_type (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_esil (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_opcode (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_syntax (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_pointer (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_ret (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_offset (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_jump (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_fail (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_newbits (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_stackframe (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_arch (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_hint_unset_bits (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_addr_hints_at (anal : * mut RAnal , addr : u64) -> * const RVector ; } pub type RAnalAddrHintRecordsCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , records : * const RVector , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_addr_hints_foreach (anal : * mut RAnal , cb : RAnalAddrHintRecordsCb , user : * mut :: std :: os :: raw :: c_void) ; } pub type RAnalArchHintCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , arch : * const :: std :: os :: raw :: c_char , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_arch_hints_foreach (anal : * mut RAnal , cb : RAnalArchHintCb , user : * mut :: std :: os :: raw :: c_void) ; } pub type RAnalBitsHintCb = :: std :: option :: Option < unsafe extern "C" fn (addr : u64 , bits : :: std :: os :: raw :: c_int , user : * mut :: std :: os :: raw :: c_void) -> bool > ; extern "C" { pub fn r_anal_bits_hints_foreach (anal : * mut RAnal , cb : RAnalBitsHintCb , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_hint_arch_at (anal : * mut RAnal , addr : u64 , hint_addr : * mut u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_hint_bits_at (anal : * mut RAnal , addr : u64 , hint_addr : * mut u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_hint_get (anal : * mut RAnal , addr : u64) -> * mut RAnalHint ; } extern "C" { pub fn r_anal_cycle_frame_new () -> * mut RAnalCycleFrame ; } extern "C" { pub fn r_anal_cycle_frame_free (cf : * mut RAnalCycleFrame) ; } extern "C" { pub fn r_anal_function_get_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_anal_function_get_label_at (fcn : * mut RAnalFunction , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_function_set_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_anal_function_delete_label (fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_function_delete_label_at (fcn : * mut RAnalFunction , addr : u64) -> bool ; } extern "C" { pub fn r_anal_set_limits (anal : * mut RAnal , from : u64 , to : u64) ; } extern "C" { pub fn r_anal_unset_limits (anal : * mut RAnal) ; } extern "C" { pub fn r_esil_to_reil_setup (esil : * mut REsil , anal : * mut RAnal , romem : :: std :: os :: raw :: c_int , stats : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_esil_trapstr (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_noreturn_list (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_noreturn_add (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_anal_noreturn_drop (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_noreturn_at_addr (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_sign_space_count_for (a : * mut RAnal , space : * const RSpace) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_space_unset_for (a : * mut RAnal , space : * const RSpace) ; } extern "C" { pub fn r_sign_space_rename_for (a : * mut RAnal , space : * const RSpace , oname : * const :: std :: os :: raw :: c_char , nname : * const :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RVTableContext { pub anal : * mut RAnal , pub abi : RAnalCPPABI , pub word_size : u8 , pub read_addr : :: std :: option :: Option < unsafe extern "C" fn (anal : * mut RAnal , addr : u64 , buf : * mut u64) -> bool > , } # [test] fn bindgen_test_layout_RVTableContext () { const UNINIT : :: std :: mem :: MaybeUninit < RVTableContext > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RVTableContext > () , 24usize , concat ! ("Size of: " , stringify ! (RVTableContext))) ; assert_eq ! (:: std :: mem :: align_of :: < RVTableContext > () , 8usize , concat ! ("Alignment of " , stringify ! (RVTableContext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . abi) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (abi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . word_size) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (word_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read_addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RVTableContext) , "::" , stringify ! (read_addr))) ; } impl Default for RVTableContext { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct vtable_info_t { pub saddr : u64 , pub methods : RVector , } # [test] fn bindgen_test_layout_vtable_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < vtable_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < vtable_info_t > () , 56usize , concat ! ("Size of: " , stringify ! (vtable_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < vtable_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (vtable_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . saddr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (vtable_info_t) , "::" , stringify ! (saddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . methods) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (vtable_info_t) , "::" , stringify ! (methods))) ; } impl Default for vtable_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVTableInfo = vtable_info_t ; extern "C" { pub fn r_anal_vtable_info_free (vtable : * mut RVTableInfo) ; } extern "C" { pub fn r_anal_vtable_info_get_size (context : * mut RVTableContext , vtable : * mut RVTableInfo) -> u64 ; } extern "C" { pub fn r_anal_vtable_begin (anal : * mut RAnal , context : * mut RVTableContext) -> bool ; } extern "C" { pub fn r_anal_vtable_parse_at (context : * mut RVTableContext , addr : u64) -> * mut RVTableInfo ; } extern "C" { pub fn r_anal_vtable_search (context : * mut RVTableContext) -> * mut RList ; } extern "C" { pub fn r_anal_vtables_list (anal : * mut RAnal , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_msvc_demangle_class_name (context : * mut RVTableContext , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_msvc_print_complete_object_locator (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_type_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_class_hierarchy_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_base_class_descriptor (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_msvc_print_at_vtable (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int , strict : bool) -> bool ; } extern "C" { pub fn r_anal_rtti_msvc_recover_all (vt_context : * mut RVTableContext , vtables : * mut RList) ; } extern "C" { pub fn r_anal_rtti_itanium_demangle_class_name (context : * mut RVTableContext , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_itanium_print_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_si_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_vmi_class_type_info (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_itanium_print_at_vtable (context : * mut RVTableContext , addr : u64 , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_rtti_itanium_recover_all (vt_context : * mut RVTableContext , vtables : * mut RList) ; } extern "C" { pub fn r_anal_rtti_demangle_class_name (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_rtti_print_at_vtable (anal : * mut RAnal , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_print_all (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_anal_rtti_recover_all (anal : * mut RAnal) ; } extern "C" { pub fn r_anal_preludes (anal : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_anal_is_prelude (anal : * mut RAnal , addr : u64 , data : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_method_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub vtable_offset : i64 , } # [test] fn bindgen_test_layout_r_anal_method_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_method_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_method_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_method_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_method_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_method_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vtable_offset) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_method_t) , "::" , stringify ! (vtable_offset))) ; } impl Default for r_anal_method_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalMethod = r_anal_method_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_base_class_t { pub id : * mut :: std :: os :: raw :: c_char , pub offset : u64 , pub class_name : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_anal_base_class_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_base_class_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_base_class_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_anal_base_class_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_base_class_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_base_class_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . class_name) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_base_class_t) , "::" , stringify ! (class_name))) ; } impl Default for r_anal_base_class_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalBaseClass = r_anal_base_class_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_anal_vtable_t { pub id : * mut :: std :: os :: raw :: c_char , pub offset : u64 , pub addr : u64 , pub size : u64 , } # [test] fn bindgen_test_layout_r_anal_vtable_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_anal_vtable_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_anal_vtable_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_anal_vtable_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_anal_vtable_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_anal_vtable_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_anal_vtable_t) , "::" , stringify ! (size))) ; } impl Default for r_anal_vtable_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAnalVTable = r_anal_vtable_t ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_SUCCESS : RAnalClassErr = 0 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_CLASH : RAnalClassErr = 1 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_NONEXISTENT_ATTR : RAnalClassErr = 2 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_NONEXISTENT_CLASS : RAnalClassErr = 3 ; pub const RAnalClassErr_R_ANAL_CLASS_ERR_OTHER : RAnalClassErr = 4 ; pub type RAnalClassErr = :: std :: os :: raw :: c_uint ; extern "C" { pub fn r_anal_cparse (anal : * mut RAnal , code : * const :: std :: os :: raw :: c_char , error_msg : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_cparse_file (anal : * mut RAnal , path : * const :: std :: os :: raw :: c_char , dir : * const :: std :: os :: raw :: c_char , error_msg : * mut * mut :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_create (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_delete (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_exists (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_class_get_all (anal : * mut RAnal , sorted : bool) -> * mut SdbList ; } extern "C" { pub fn r_anal_class_foreach (anal : * mut RAnal , cb : SdbForeachCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_anal_class_rename (anal : * mut RAnal , old_name : * const :: std :: os :: raw :: c_char , new_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_fini (meth : * mut RAnalMethod) ; } extern "C" { pub fn r_anal_class_method_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth_name : * const :: std :: os :: raw :: c_char , meth : * mut RAnalMethod) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_method_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth : * mut RAnalMethod) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_rename (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , old_meth_name : * const :: std :: os :: raw :: c_char , new_meth_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_method_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , meth_name : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_fini (base : * mut RAnalBaseClass) ; } extern "C" { pub fn r_anal_class_base_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base_id : * const :: std :: os :: raw :: c_char , base : * mut RAnalBaseClass) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_base_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base : * mut RAnalBaseClass) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_base_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , base_id : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_fini (vtable : * mut RAnalVTable) ; } extern "C" { pub fn r_anal_class_vtable_get (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable_id : * const :: std :: os :: raw :: c_char , vtable : * mut RAnalVTable) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_get_all (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut RVector ; } extern "C" { pub fn r_anal_class_vtable_set (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable : * mut RAnalVTable) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_vtable_delete (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , vtable_id : * const :: std :: os :: raw :: c_char) -> RAnalClassErr ; } extern "C" { pub fn r_anal_class_print (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , detailed : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_json (anal : * mut RAnal , j : * mut PJ , class_name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_anal_class_list (anal : * mut RAnal , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_bases (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_vtables (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_list_vtable_offset_functions (anal : * mut RAnal , class_name : * const :: std :: os :: raw :: c_char , offset : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_class_get_inheritance_graph (anal : * mut RAnal) -> * mut RGraph ; } extern "C" { pub fn r_anal_esil_cfg_new () -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_expr (cfg : * mut RAnalEsilCFG , anal : * mut RAnal , off : u64 , expr : * mut :: std :: os :: raw :: c_char) -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_op (cfg : * mut RAnalEsilCFG , anal : * mut RAnal , op : * mut RAnalOp) -> * mut RAnalEsilCFG ; } extern "C" { pub fn r_anal_esil_cfg_merge_blocks (cfg : * mut RAnalEsilCFG) ; } extern "C" { pub fn r_anal_esil_cfg_free (cfg : * mut RAnalEsilCFG) ; } extern "C" { pub fn r_anal_get_gperf_cc (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_anal_get_gperf_types (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_anal_esil_dfg_node_new (edf : * mut RAnalEsilDFG , c : * const :: std :: os :: raw :: c_char) -> * mut RAnalEsilDFGNode ; } extern "C" { pub fn r_anal_esil_dfg_new (anal : * mut RAnal , use_map_info : bool , use_maps : bool) -> * mut RAnalEsilDFG ; } extern "C" { pub fn r_anal_esil_dfg_free (dfg : * mut RAnalEsilDFG) ; } extern "C" { pub fn r_anal_esil_dfg_expr (anal : * mut RAnal , dfg : * mut RAnalEsilDFG , expr : * const :: std :: os :: raw :: c_char , use_map_info : bool , use_maps : bool) -> * mut RAnalEsilDFG ; } extern "C" { pub fn r_anal_esil_dfg_fold_const (anal : * mut RAnal , dfg : * mut RAnalEsilDFG) ; } extern "C" { pub fn r_anal_esil_dfg_filter (dfg : * mut RAnalEsilDFG , reg : * const :: std :: os :: raw :: c_char) -> * mut RStrBuf ; } extern "C" { pub fn r_anal_esil_dfg_filter_expr (anal : * mut RAnal , expr : * const :: std :: os :: raw :: c_char , reg : * const :: std :: os :: raw :: c_char , use_map_info : bool , use_maps : bool) -> * mut RStrBuf ; } extern "C" { pub fn r_anal_esil_dfg_reg_is_const (dfg : * mut RAnalEsilDFG , reg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_types_from_fcn (anal : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_anal_get_base_type (anal : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RAnalBaseType ; } extern "C" { pub fn r_parse_pdb_types (anal : * const RAnal , pdb : * const RBinPdb) ; } extern "C" { pub fn r_anal_save_base_type (anal : * const RAnal , type_ : * const RAnalBaseType) ; } extern "C" { pub fn r_anal_base_type_free (type_ : * mut RAnalBaseType) ; } extern "C" { pub fn r_anal_base_type_new (kind : RAnalBaseTypeKind) -> * mut RAnalBaseType ; } extern "C" { pub fn r_anal_dwarf_process_info (anal : * const RAnal , ctx : * mut RAnalDwarfContext) ; } extern "C" { pub fn r_anal_dwarf_integrate_functions (anal : * mut RAnal , flags : * mut RFlag , dwarf_sdb : * mut Sdb) ; } extern "C" { pub fn r_anal_global_get (anal : * mut RAnal , addr : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_anal_global_add (anal : * mut RAnal , addr : u64 , type_name : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_del (anal : * mut RAnal , addr : u64) -> bool ; } extern "C" { pub fn r_anal_global_retype (anal : * mut RAnal , addr : u64 , new_type : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_rename (anal : * mut RAnal , addr : u64 , new_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_anal_global_get_type (anal : * mut RAnal , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_anal_is_dirty (anal : * mut RAnal) -> bool ; } extern "C" { pub fn r_anal_tid_kill (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_anal_tid_get (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> * mut RAnalThread ; } extern "C" { pub fn r_anal_tid_add (anal : * mut RAnal , map : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_anal_tid_select (anal : * mut RAnal , tid : :: std :: os :: raw :: c_int) -> bool ; } pub type RVecBacktrace = r_vec_RVecBacktrace_t ; extern "C" { pub fn r_anal_backtrace_add (a : * mut RAnal , addr : u64 , bt : * mut RVecBacktrace) ; } extern "C" { pub fn r_anal_backtrace_del (a : * mut RAnal , addr : u64) ; } extern "C" { pub fn r_anal_backtrace_init (a : * mut RAnal) ; } extern "C" { pub fn r_anal_backtrace_fini (a : * mut RAnal) ; } extern "C" { pub fn r_anal_backtrace_list (a : * mut RAnal , addr : u64 , opt : :: std :: os :: raw :: c_int) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_code_t { pub len : :: std :: os :: raw :: c_int , pub bytes : * mut u8 , pub assembly : * mut :: std :: os :: raw :: c_char , pub equs : * mut [u64 ; 11usize] , pub code_offset : u64 , pub data_offset : u64 , pub code_align : :: std :: os :: raw :: c_int , pub cfloat_profile : RCFloatProfile , } # [test] fn bindgen_test_layout_r_asm_code_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_code_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_code_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_asm_code_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_code_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_code_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . assembly) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (assembly))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . equs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (equs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code_offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (code_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data_offset) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (data_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code_align) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (code_align))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfloat_profile) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_asm_code_t) , "::" , stringify ! (cfloat_profile))) ; } impl Default for r_asm_code_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmCode = r_asm_code_t ; pub type RAnalVarList = :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , kind : :: std :: os :: raw :: c_int) -> * mut RList > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_parse_t { pub user : * mut :: std :: os :: raw :: c_void , pub flagspace : * mut RSpace , pub notin_flagspace : * mut RSpace , pub pseudo : bool , pub subreg : bool , pub subrel : bool , pub subtail : bool , pub localvar_only : bool , pub subrel_addr : u64 , pub maxflagnamelen : :: std :: os :: raw :: c_int , pub minval : :: std :: os :: raw :: c_int , pub retleave_asm : * mut :: std :: os :: raw :: c_char , pub varlist : RAnalVarList , pub get_ptr_at : :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> i64 > , pub get_reg_at : :: std :: option :: Option < unsafe extern "C" fn (fcn : * mut RAnalFunction , delta : i64 , addr : u64) -> * const :: std :: os :: raw :: c_char > , pub get_op_ireg : :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , addr : u64) -> * mut :: std :: os :: raw :: c_char > , pub flag_get : RFlagGetAtAddr , pub label_get : RAnalLabelAt , } # [test] fn bindgen_test_layout_r_parse_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_parse_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_parse_t > () , 104usize , concat ! ("Size of: " , stringify ! (r_parse_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_parse_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_parse_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flagspace) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (flagspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . notin_flagspace) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (notin_flagspace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pseudo) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (pseudo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subreg) as usize - ptr as usize } , 25usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subreg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subrel) as usize - ptr as usize } , 26usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subrel))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subtail) as usize - ptr as usize } , 27usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subtail))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . localvar_only) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (localvar_only))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subrel_addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (subrel_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxflagnamelen) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (maxflagnamelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minval) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (minval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retleave_asm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (retleave_asm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varlist) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (varlist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_ptr_at) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_ptr_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_reg_at) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_reg_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_op_ireg) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (get_op_ireg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag_get) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (flag_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . label_get) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_parse_t) , "::" , stringify ! (label_get))) ; } impl Default for r_parse_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RParse = r_parse_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_t { pub arch : * mut RArch , pub config : * mut RArchConfig , pub pc : u64 , pub user : * mut :: std :: os :: raw :: c_void , pub ecur : * mut RArchSession , pub dcur : * mut RArchSession , pub cur : * mut r_asm_plugin_session_t , pub sessions : * mut RList , pub analb : RAnalBind , pub pair : * mut Sdb , pub syscall : * mut RSyscall , pub num : * mut RNum , pub dataalign : :: std :: os :: raw :: c_int , pub codealign : :: std :: os :: raw :: c_int , pub flags : * mut [u64 ; 11usize] , pub pseudo : bool , pub use_spp : bool , pub parse : * mut RParse , } # [test] fn bindgen_test_layout_r_asm_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_t > () , 192usize , concat ! ("Size of: " , stringify ! (r_asm_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ecur) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (ecur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dcur) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (dcur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sessions) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (sessions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . analb) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (analb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pair) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pair))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dataalign) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (dataalign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codealign) as usize - ptr as usize } , 164usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (codealign))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pseudo) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (pseudo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . use_spp) as usize - ptr as usize } , 177usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (use_spp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_asm_t) , "::" , stringify ! (parse))) ; } impl Default for r_asm_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsm = r_asm_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_plugin_session_t { pub rasm : * mut r_asm_t , pub plugin : * mut r_asm_plugin_t , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_asm_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_asm_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_session_t) , "::" , stringify ! (data))) ; } impl Default for r_asm_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmPluginSession = r_asm_plugin_session_t ; pub type RAsmParseInit = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession) > ; pub type RAsmParseFini = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession) > ; pub type RAsmParsePseudo = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParseFilter = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , addr : u64 , f : * mut RFlag , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParseSubvar = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , f : * mut RAnalFunction , addr : u64 , oplen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RAsmParsePatch = :: std :: option :: Option < unsafe extern "C" fn (s : * mut RAsmPluginSession , aop : * mut RAnalOp , newop : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_asm_plugin_t { pub meta : RPluginMeta , pub init : RAsmParseInit , pub fini : RAsmParseFini , pub parse : RAsmParsePseudo , pub filter : RAsmParseFilter , pub subvar : RAsmParseSubvar , pub patch : RAsmParsePatch , } # [test] fn bindgen_test_layout_r_asm_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_asm_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_asm_plugin_t > () , 112usize , concat ! ("Size of: " , stringify ! (r_asm_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_asm_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_asm_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . parse) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (parse))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . filter) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (filter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subvar) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (subvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patch) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_asm_plugin_t) , "::" , stringify ! (patch))) ; } impl Default for r_asm_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RAsmPlugin = r_asm_plugin_t ; extern "C" { pub fn r_parse_new () -> * mut RParse ; } extern "C" { pub fn r_parse_free (p : * mut RParse) ; } extern "C" { pub fn r_asm_parse_pseudo (a : * mut RAsm , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_filter (a : * mut RAsm , addr : u64 , f : * mut RFlag , hint : * mut RAnalHint , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_subvar (a : * mut RAsm , f : * mut RAnalFunction , addr : u64 , oplen : :: std :: os :: raw :: c_int , data : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_immtrim (a : * mut RAsm , opstr : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_immbase (a : * mut RAsm , opstr : * const :: std :: os :: raw :: c_char , base : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_parse_patch (a : * mut RAsm , aop : * mut RAnalOp , newop : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_new () -> * mut RAsm ; } extern "C" { pub fn r_asm_free (a : * mut RAsm) ; } extern "C" { pub fn r_asm_modify (a : * mut RAsm , buf : * mut u8 , field : :: std :: os :: raw :: c_int , val : u64) -> bool ; } extern "C" { pub fn r_asm_mnemonics (a : * mut RAsm , id : :: std :: os :: raw :: c_int , json : bool) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_mnemonics_byname (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_user_ptr (a : * mut RAsm , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_asm_use (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_use_assembler (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_use_parser (a : * mut RAsm , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_asm_set_bits (a : * mut RAsm , bits : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_big_endian (a : * mut RAsm , big_endian : bool) -> bool ; } extern "C" { pub fn r_asm_set_syntax (a : * mut RAsm , syntax : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_asm_syntax_from_string (name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_set_pc (a : * mut RAsm , pc : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_disassemble (a : * mut RAsm , op : * mut RAnalOp , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_asm_mdisassemble (a : * mut RAsm , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_mdisassemble_hexstr (a : * mut RAsm , p : * mut RParse , hexstr : * const :: std :: os :: raw :: c_char) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_assemble (a : * mut RAsm , buf : * const :: std :: os :: raw :: c_char) -> * mut RAsmCode ; } extern "C" { pub fn r_asm_tostring (a : * mut RAsm , addr : u64 , b : * const u8 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_from_string (a : * mut RAsm , addr : u64 , b : * const :: std :: os :: raw :: c_char , l : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_asm_describe (a : * mut RAsm , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_list_directives () ; } extern "C" { pub fn r_asm_get_gperf (k : * const :: std :: os :: raw :: c_char) -> * mut SdbGperf ; } extern "C" { pub fn r_asm_cpus (a : * mut RAsm) -> * mut RList ; } extern "C" { pub fn r_asm_code_new () -> * mut RAsmCode ; } extern "C" { pub fn r_asm_code_free (acode : * mut RAsmCode) ; } extern "C" { pub fn r_asm_code_set_equ (code : * mut RAsmCode , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_asm_code_equ_replace (code : * mut RAsmCode , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_code_get_hex (acode : * mut RAsmCode) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_code_equ_get (code : * mut RAsmCode , key : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_asm_plugin_add (a : * mut RAsm , plugin : * mut RAsmPlugin) -> bool ; } extern "C" { pub fn r_asm_plugin_remove (a : * mut RAsm , plugin : * mut RAsmPlugin) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_plugin_t { pub meta : RPluginMeta , pub type_ : :: std :: os :: raw :: c_int , pub build : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut :: std :: os :: raw :: c_void) -> * mut RBuffer > , } # [test] fn bindgen_test_layout_r_egg_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_plugin_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_egg_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . build) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_plugin_t) , "::" , stringify ! (build))) ; } impl Default for r_egg_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REggPlugin = r_egg_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t { pub pushargs : :: std :: os :: raw :: c_int , pub nalias : :: std :: os :: raw :: c_int , pub nsyscalls : :: std :: os :: raw :: c_int , pub conditionstr : * mut :: std :: os :: raw :: c_char , pub syscallbody : * mut :: std :: os :: raw :: c_char , pub includefile : * mut :: std :: os :: raw :: c_char , pub setenviron : * mut :: std :: os :: raw :: c_char , pub mathline : * mut :: std :: os :: raw :: c_char , pub commentmode : :: std :: os :: raw :: c_int , pub varsize : :: std :: os :: raw :: c_int , pub varxs : :: std :: os :: raw :: c_int , pub lastctxdelta : :: std :: os :: raw :: c_int , pub nargs : :: std :: os :: raw :: c_int , pub docall : :: std :: os :: raw :: c_int , pub nfunctions : :: std :: os :: raw :: c_int , pub nbrackets : :: std :: os :: raw :: c_int , pub slurpin : :: std :: os :: raw :: c_int , pub slurp : :: std :: os :: raw :: c_int , pub line : :: std :: os :: raw :: c_int , pub elem : [:: std :: os :: raw :: c_char ; 1024usize] , pub attsyntax : :: std :: os :: raw :: c_int , pub elem_n : :: std :: os :: raw :: c_int , pub callname : * mut :: std :: os :: raw :: c_char , pub endframe : * mut :: std :: os :: raw :: c_char , pub ctxpush : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub file : * mut :: std :: os :: raw :: c_char , pub dstvar : * mut :: std :: os :: raw :: c_char , pub dstval : * mut :: std :: os :: raw :: c_char , pub includedir : * mut :: std :: os :: raw :: c_char , pub ifelse_table : [[* mut :: std :: os :: raw :: c_char ; 32usize] ; 32usize] , pub ndstval : :: std :: os :: raw :: c_int , pub skipline : :: std :: os :: raw :: c_int , pub quoteline : :: std :: os :: raw :: c_int , pub quotelinevar : :: std :: os :: raw :: c_int , pub stackframe : :: std :: os :: raw :: c_int , pub stackfixed : :: std :: os :: raw :: c_int , pub oc : :: std :: os :: raw :: c_int , pub mode : :: std :: os :: raw :: c_int , pub inlinectr : :: std :: os :: raw :: c_int , pub inlines : [r_egg_lang_t__bindgen_ty_1 ; 256usize] , pub ninlines : :: std :: os :: raw :: c_int , pub syscalls : [r_egg_lang_t__bindgen_ty_2 ; 256usize] , pub aliases : [r_egg_lang_t__bindgen_ty_3 ; 256usize] , pub nested : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub nested_callname : [* mut :: std :: os :: raw :: c_char ; 32usize] , pub nestedi : [:: std :: os :: raw :: c_int ; 32usize] , } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_1 { pub name : * mut :: std :: os :: raw :: c_char , pub body : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_1 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_1) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . body) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_1) , "::" , stringify ! (body))) ; } impl Default for r_egg_lang_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_2 { pub name : * mut :: std :: os :: raw :: c_char , pub arg : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_2 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_2 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_2 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_2))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_2 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_2) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arg) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_2) , "::" , stringify ! (arg))) ; } impl Default for r_egg_lang_t__bindgen_ty_2 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_lang_t__bindgen_ty_3 { pub name : * mut :: std :: os :: raw :: c_char , pub content : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_egg_lang_t__bindgen_ty_3 () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t__bindgen_ty_3 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t__bindgen_ty_3 > () , 16usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t__bindgen_ty_3))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t__bindgen_ty_3 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t__bindgen_ty_3))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_3) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . content) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t__bindgen_ty_3) , "::" , stringify ! (content))) ; } impl Default for r_egg_lang_t__bindgen_ty_3 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_egg_lang_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_lang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_lang_t > () , 22608usize , concat ! ("Size of: " , stringify ! (r_egg_lang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_lang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_lang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pushargs) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (pushargs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nalias) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nalias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nsyscalls) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nsyscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . conditionstr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (conditionstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscallbody) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (syscallbody))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . includefile) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (includefile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setenviron) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (setenviron))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mathline) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (mathline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commentmode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (commentmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varsize) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (varsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . varxs) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (varxs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastctxdelta) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (lastctxdelta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nargs) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nargs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . docall) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (docall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nfunctions) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nfunctions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbrackets) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nbrackets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurpin) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (slurpin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . slurp) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (slurp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . line) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (line))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (elem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attsyntax) as usize - ptr as usize } , 1124usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (attsyntax))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . elem_n) as usize - ptr as usize } , 1128usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (elem_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callname) as usize - ptr as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (callname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endframe) as usize - ptr as usize } , 1144usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (endframe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ctxpush) as usize - ptr as usize } , 1152usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ctxpush))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 1408usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dstvar) as usize - ptr as usize } , 1416usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (dstvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dstval) as usize - ptr as usize } , 1424usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (dstval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . includedir) as usize - ptr as usize } , 1432usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (includedir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ifelse_table) as usize - ptr as usize } , 1440usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ifelse_table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndstval) as usize - ptr as usize } , 9632usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ndstval))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skipline) as usize - ptr as usize } , 9636usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (skipline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quoteline) as usize - ptr as usize } , 9640usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (quoteline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . quotelinevar) as usize - ptr as usize } , 9644usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (quotelinevar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackframe) as usize - ptr as usize } , 9648usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (stackframe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stackfixed) as usize - ptr as usize } , 9652usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (stackfixed))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oc) as usize - ptr as usize } , 9656usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (oc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 9660usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inlinectr) as usize - ptr as usize } , 9664usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (inlinectr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . inlines) as usize - ptr as usize } , 9672usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (inlines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ninlines) as usize - ptr as usize } , 13768usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (ninlines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscalls) as usize - ptr as usize } , 13776usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (syscalls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aliases) as usize - ptr as usize } , 17872usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (aliases))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nested) as usize - ptr as usize } , 21968usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nested))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nested_callname) as usize - ptr as usize } , 22224usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nested_callname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nestedi) as usize - ptr as usize } , 22480usize , concat ! ("Offset of field: " , stringify ! (r_egg_lang_t) , "::" , stringify ! (nestedi))) ; } impl Default for r_egg_lang_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REggLang = r_egg_lang_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_t { pub src : * mut RBuffer , pub buf : * mut RBuffer , pub bin : * mut RBuffer , pub list : * mut RList , pub rasm : * mut RAsm , pub syscall : * mut RSyscall , pub lang : REggLang , pub db : * mut Sdb , pub plugins : * mut RList , pub patches : * mut RList , pub remit : * mut r_egg_emit_t , pub arch : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub os : u32 , pub context : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_egg_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_t > () , 22712usize , concat ! ("Size of: " , stringify ! (r_egg_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . src) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (src))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 22656usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 22664usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . patches) as usize - ptr as usize } , 22672usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (patches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . remit) as usize - ptr as usize } , 22680usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (remit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 22688usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 22692usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 22696usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . os) as usize - ptr as usize } , 22700usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (os))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . context) as usize - ptr as usize } , 22704usize , concat ! ("Offset of field: " , stringify ! (r_egg_t) , "::" , stringify ! (context))) ; } impl Default for r_egg_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type REgg = r_egg_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_egg_emit_t { pub arch : * const :: std :: os :: raw :: c_char , pub size : :: std :: os :: raw :: c_int , pub retvar : * const :: std :: os :: raw :: c_char , pub regs : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , idx : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char > , pub init : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg) > , pub call : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , addr : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) > , pub jmp : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , addr : * const :: std :: os :: raw :: c_char , ptr : :: std :: os :: raw :: c_int) > , pub frame : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , sz : :: std :: os :: raw :: c_int) > , pub syscall : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , num : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char > , pub trap : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg) > , pub frame_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , sz : :: std :: os :: raw :: c_int , ctx : :: std :: os :: raw :: c_int) > , pub comment : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , fmt : * const :: std :: os :: raw :: c_char , ...) > , pub push_arg : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , xs : :: std :: os :: raw :: c_int , num : :: std :: os :: raw :: c_int , str_ : * const :: std :: os :: raw :: c_char) > , pub set_string : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , dstvar : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char , j : :: std :: os :: raw :: c_int) > , pub equ : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , key : * const :: std :: os :: raw :: c_char , value : * const :: std :: os :: raw :: c_char) > , pub get_result : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , ocn : * const :: std :: os :: raw :: c_char) > , pub restore_stack : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , size : :: std :: os :: raw :: c_int) > , pub syscall_args : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , nargs : :: std :: os :: raw :: c_int) > , pub get_var : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , type_ : :: std :: os :: raw :: c_int , out : * mut :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) > , pub get_ar : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , idx : :: std :: os :: raw :: c_int) > , pub while_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , label : * const :: std :: os :: raw :: c_char) > , pub load : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , str_ : * const :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int) > , pub load_ptr : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , str_ : * const :: std :: os :: raw :: c_char) > , pub branch : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , b : * mut :: std :: os :: raw :: c_char , g : * mut :: std :: os :: raw :: c_char , e : * mut :: std :: os :: raw :: c_char , n : * mut :: std :: os :: raw :: c_char , sz : :: std :: os :: raw :: c_int , dst : * const :: std :: os :: raw :: c_char) > , pub mathop : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , ch : :: std :: os :: raw :: c_int , sz : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int , eq : * const :: std :: os :: raw :: c_char , p : * const :: std :: os :: raw :: c_char) > , pub get_while_end : :: std :: option :: Option < unsafe extern "C" fn (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , ctxpush : * const :: std :: os :: raw :: c_char , label : * const :: std :: os :: raw :: c_char) > , } # [test] fn bindgen_test_layout_r_egg_emit_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_egg_emit_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_egg_emit_t > () , 208usize , concat ! ("Size of: " , stringify ! (r_egg_emit_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_egg_emit_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_egg_emit_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . retvar) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (retvar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (call))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . jmp) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (jmp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frame) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (frame))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (syscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frame_end) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (frame_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . push_arg) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (push_arg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_string) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (set_string))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . equ) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (equ))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_result) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_result))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . restore_stack) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (restore_stack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . syscall_args) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (syscall_args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_var) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_var))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_ar) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_ar))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . while_end) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (while_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (load))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . load_ptr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (load_ptr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branch) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (branch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mathop) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (mathop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_while_end) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_egg_emit_t) , "::" , stringify ! (get_while_end))) ; } impl Default for r_egg_emit_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_egg_new () -> * mut REgg ; } extern "C" { pub fn r_egg_lang_init (egg : * mut REgg) ; } extern "C" { pub fn r_egg_lang_free (egg : * mut REgg) ; } extern "C" { pub fn r_egg_tostring (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_free (egg : * mut REgg) ; } extern "C" { pub fn r_egg_plugin_add (a : * mut REgg , plugin : * mut REggPlugin) -> bool ; } extern "C" { pub fn r_egg_plugin_remove (a : * mut REgg , plugin : * mut REggPlugin) -> bool ; } extern "C" { pub fn r_egg_reset (egg : * mut REgg) ; } extern "C" { pub fn r_egg_setup (egg : * mut REgg , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int , endian : :: std :: os :: raw :: c_int , os : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_include (egg : * mut REgg , file : * const :: std :: os :: raw :: c_char , format : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_include_str (egg : * mut REgg , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_load (egg : * mut REgg , code : * const :: std :: os :: raw :: c_char , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_syscall (egg : * mut REgg , arg : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_egg_alloc (egg : * mut REgg , n : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_label (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_raw (egg : * mut REgg , b : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_encode (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_shellcode (egg : * mut REgg , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_option_set (egg : * mut REgg , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_option_get (egg : * mut REgg , k : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_if (egg : * mut REgg , reg : * const :: std :: os :: raw :: c_char , cmp : :: std :: os :: raw :: c_char , v : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_printf (egg : * mut REgg , fmt : * const :: std :: os :: raw :: c_char , ...) ; } extern "C" { pub fn r_egg_compile (egg : * mut REgg) -> bool ; } extern "C" { pub fn r_egg_padding (egg : * mut REgg , pad : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_assemble (egg : * mut REgg) -> bool ; } extern "C" { pub fn r_egg_assemble_asm (egg : * mut REgg , asm_list : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_egg_pattern (egg : * mut REgg , size : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_egg_get_bin (egg : * mut REgg) -> * mut RBuffer ; } extern "C" { pub fn r_egg_get_source (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_get_assembly (egg : * mut REgg) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_append (egg : * mut REgg , src : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_run (egg : * mut REgg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_run_rop (egg : * mut REgg) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_patch (egg : * mut REgg , off : :: std :: os :: raw :: c_int , b : * const u8 , l : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_egg_finalize (egg : * mut REgg) ; } extern "C" { pub fn r_egg_cfile_parser (file : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , os : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_mkvar (egg : * mut REgg , out : * mut :: std :: os :: raw :: c_char , _str : * const :: std :: os :: raw :: c_char , delta : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_egg_lang_parsechar (egg : * mut REgg , c : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_egg_lang_include_path (egg : * mut REgg , path : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_egg_lang_include_init (egg : * mut REgg) ; } pub type RCoreCmdStrCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; pub type RCoreCmdfCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , s : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int > ; pub type RCoreCallAtCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut :: std :: os :: raw :: c_void , addr : u64 , s : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_t { pub user : * mut :: std :: os :: raw :: c_void , pub cons : * mut RCons , pub defs : * mut RList , pub langs : * mut RList , pub cmd_str : RCoreCmdStrCallback , pub cmdf : RCoreCmdfCallback , pub call_at : RCoreCallAtCallback , pub sessions : * mut RList , pub session : * mut r_lang_session_t , } # [test] fn bindgen_test_layout_r_lang_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_lang_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . defs) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (defs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . langs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (langs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_str) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cmd_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdf) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (cmdf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call_at) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (call_at))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sessions) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (sessions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_lang_t) , "::" , stringify ! (session))) ; } impl Default for r_lang_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLang = r_lang_t ; pub type _RLangSession = r_lang_session_t ; pub type RLangPluginInit = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginSetup = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginFini = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginPrompt = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession) -> bool > ; pub type RLangPluginRun = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , code : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool > ; pub type RLangPluginRunFile = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , file : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RLangPluginSetArgv = :: std :: option :: Option < unsafe extern "C" fn (s : * mut _RLangSession , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_plugin_t { pub meta : RPluginMeta , pub alias : * const :: std :: os :: raw :: c_char , pub example : * const :: std :: os :: raw :: c_char , pub help : * mut * const :: std :: os :: raw :: c_char , pub ext : * const :: std :: os :: raw :: c_char , pub init : RLangPluginInit , pub setup : RLangPluginSetup , pub fini : RLangPluginFini , pub prompt : RLangPluginPrompt , pub run : RLangPluginRun , pub run_file : RLangPluginRunFile , pub set_argv : RLangPluginSetArgv , } # [test] fn bindgen_test_layout_r_lang_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_plugin_t > () , 152usize , concat ! ("Size of: " , stringify ! (r_lang_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . alias) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (alias))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . example) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (example))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . help) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (help))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ext) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (ext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . setup) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (setup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (prompt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (run))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . run_file) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (run_file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_argv) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_lang_plugin_t) , "::" , stringify ! (set_argv))) ; } impl Default for r_lang_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLangPlugin = r_lang_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_def_t { pub name : * mut :: std :: os :: raw :: c_char , pub type_ : * mut :: std :: os :: raw :: c_char , pub value : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_lang_def_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_def_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_def_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_lang_def_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_def_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_def_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_def_t) , "::" , stringify ! (value))) ; } impl Default for r_lang_def_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RLangDef = r_lang_def_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_lang_session_t { pub lang : * mut RLang , pub plugin : * mut RLangPlugin , pub plugin_data : * mut :: std :: os :: raw :: c_void , pub user_data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_lang_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_lang_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_lang_session_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_lang_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_lang_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_lang_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (plugin_data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user_data) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_lang_session_t) , "::" , stringify ! (user_data))) ; } impl Default for r_lang_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_lang_new () -> * mut RLang ; } extern "C" { pub fn r_lang_free (lang : * mut RLang) ; } extern "C" { pub fn r_lang_setup (lang : * mut RLang) -> bool ; } extern "C" { pub fn r_lang_plugin_add (lang : * mut RLang , plugin : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_plugin_remove (lang : * mut RLang , plugin : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_use (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_use_plugin (lang : * mut RLang , h : * mut RLangPlugin) -> bool ; } extern "C" { pub fn r_lang_run (lang : * mut RLang , code : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_lang_run_string (lang : * mut RLang , code : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_set_user_ptr (lang : * mut RLang , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_lang_set_argv (lang : * mut RLang , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_run_file (lang : * mut RLang , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_lang_prompt (lang : * mut RLang) -> bool ; } extern "C" { pub fn r_lang_get_by_name (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) -> * mut RLangPlugin ; } extern "C" { pub fn r_lang_get_by_extension (lang : * mut RLang , ext : * const :: std :: os :: raw :: c_char) -> * mut RLangPlugin ; } extern "C" { pub fn r_lang_define (lang : * mut RLang , type_ : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , value : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_lang_undef (lang : * mut RLang , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_lang_def_free (def : * mut RLangDef) ; } pub type RCore = r_core_t ; pub type RCmdCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; pub type RCmdNullCb = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_label_t { pub name : [:: std :: os :: raw :: c_char ; 80usize] , pub ptr : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_cmd_macro_label_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_label_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_label_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_label_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_label_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_label_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_label_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_label_t) , "::" , stringify ! (ptr))) ; } impl Default for r_cmd_macro_label_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacroLabel = r_cmd_macro_label_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub args : * mut :: std :: os :: raw :: c_char , pub code : * mut :: std :: os :: raw :: c_char , pub codelen : :: std :: os :: raw :: c_int , pub nargs : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_cmd_macro_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_item_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . args) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (args))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . codelen) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (codelen))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nargs) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_item_t) , "::" , stringify ! (nargs))) ; } impl Default for r_cmd_macro_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacroItem = r_cmd_macro_item_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_macro_t { pub counter : :: std :: os :: raw :: c_int , pub brk_value : * mut u64 , pub _brk_value : u64 , pub brk : :: std :: os :: raw :: c_int , pub macro_level : :: std :: os :: raw :: c_int , pub cmd : RCoreCmd , pub user : * mut :: std :: os :: raw :: c_void , pub num : * mut RNum , pub labels_n : :: std :: os :: raw :: c_int , pub labels : [RCmdMacroLabel ; 20usize] , pub macros : * mut RList , } # [test] fn bindgen_test_layout_r_cmd_macro_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_macro_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_macro_t > () , 1832usize , concat ! ("Size of: " , stringify ! (r_cmd_macro_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_macro_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_macro_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . counter) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (counter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . brk_value) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (brk_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _brk_value) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (_brk_value))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . brk) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (brk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macro_level) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (macro_level))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels_n) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (labels_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . labels) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (labels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macros) as usize - ptr as usize } , 1824usize , concat ! ("Offset of field: " , stringify ! (r_cmd_macro_t) , "::" , stringify ! (macros))) ; } impl Default for r_cmd_macro_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdMacro = r_cmd_macro_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_item_t { pub cmd : [:: std :: os :: raw :: c_char ; 64usize] , pub callback : RCmdCb , } # [test] fn bindgen_test_layout_r_cmd_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_cmd_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_item_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . callback) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_cmd_item_t) , "::" , stringify ! (callback))) ; } impl Default for r_cmd_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdItem = r_cmd_item_t ; pub type RCmdAlias = * mut [u64 ; 11usize] ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_alias_val_t { pub data : * mut u8 , pub sz : :: std :: os :: raw :: c_int , pub is_str : bool , pub is_data : bool , } # [test] fn bindgen_test_layout_r_cmd_alias_val_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_alias_val_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_alias_val_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_cmd_alias_val_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_alias_val_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_alias_val_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sz) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (sz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_str) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (is_str))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_data) as usize - ptr as usize } , 13usize , concat ! ("Offset of field: " , stringify ! (r_cmd_alias_val_t) , "::" , stringify ! (is_data))) ; } impl Default for r_cmd_alias_val_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmdAliasVal = r_cmd_alias_val_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_cmd_t { pub data : * mut :: std :: os :: raw :: c_void , pub nullcallback : RCmdNullCb , pub cmds : [* mut RCmdItem ; 255usize] , pub macro_ : RCmdMacro , pub lcmds : * mut RList , pub plist : * mut RList , pub aliases : RCmdAlias , pub language : * mut :: std :: os :: raw :: c_void , pub ts_symbols_ht : * mut [u64 ; 11usize] , pub ht_cmds : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_cmd_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_cmd_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_cmd_t > () , 3936usize , concat ! ("Size of: " , stringify ! (r_cmd_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_cmd_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_cmd_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nullcallback) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (nullcallback))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmds) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (cmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . macro_) as usize - ptr as usize } , 2056usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (macro_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lcmds) as usize - ptr as usize } , 3888usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (lcmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plist) as usize - ptr as usize } , 3896usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (plist))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . aliases) as usize - ptr as usize } , 3904usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (aliases))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . language) as usize - ptr as usize } , 3912usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (language))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ts_symbols_ht) as usize - ptr as usize } , 3920usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (ts_symbols_ht))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht_cmds) as usize - ptr as usize } , 3928usize , concat ! ("Offset of field: " , stringify ! (r_cmd_t) , "::" , stringify ! (ht_cmds))) ; } impl Default for r_cmd_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCmd = r_cmd_t ; extern "C" { pub fn r_cmd_new (data : * mut :: std :: os :: raw :: c_void) -> * mut RCmd ; } extern "C" { pub fn r_cmd_free (cmd : * mut RCmd) -> * mut RCmd ; } extern "C" { pub fn r_cmd_call (cmd : * mut RCmd , command : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_set_data (cmd : * mut RCmd , data : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_cmd_add (cmd : * mut RCmd , command : * const :: std :: os :: raw :: c_char , callback : RCmdCb) -> bool ; } extern "C" { pub fn r_cmd_macro_item_new () -> * mut RCmdMacroItem ; } extern "C" { pub fn r_cmd_macro_item_free (item : * mut RCmdMacroItem) ; } extern "C" { pub fn r_cmd_macro_init (mac : * mut RCmdMacro) ; } extern "C" { pub fn r_cmd_macro_add (mac : * mut RCmdMacro , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_macro_rm (mac : * mut RCmdMacro , _name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_macro_list (mac : * mut RCmdMacro , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_macro_call (mac : * mut RCmdMacro , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_macro_break (mac : * mut RCmdMacro , value : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_del (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_keys (cmd : * mut RCmd) -> * mut * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_set_cmd (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_set_str (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_set_raw (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , v : * const u8 , sz : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_cmd_alias_get (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char) -> * mut RCmdAliasVal ; } extern "C" { pub fn r_cmd_alias_append_str (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , a : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_cmd_alias_append_raw (cmd : * mut RCmd , k : * const :: std :: os :: raw :: c_char , a : * const u8 , sz : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_cmd_alias_val_strdup (v : * mut RCmdAliasVal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_val_strdup_b64 (v : * mut RCmdAliasVal) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_cmd_alias_free (cmd : * mut RCmd) ; } extern "C" { pub fn r_cmd_macro_fini (mac : * mut RCmdMacro) ; } pub const RSignType_R_SIGN_BYTES : RSignType = 98 ; pub const RSignType_R_SIGN_ANAL : RSignType = 97 ; pub const RSignType_R_SIGN_COMMENT : RSignType = 99 ; pub const RSignType_R_SIGN_GRAPH : RSignType = 103 ; pub const RSignType_R_SIGN_OFFSET : RSignType = 111 ; pub const RSignType_R_SIGN_NAME : RSignType = 110 ; pub const RSignType_R_SIGN_RAWNAME : RSignType = 82 ; pub const RSignType_R_SIGN_DEMANGLED : RSignType = 100 ; pub const RSignType_R_SIGN_REFS : RSignType = 114 ; pub const RSignType_R_SIGN_XREFS : RSignType = 120 ; pub const RSignType_R_SIGN_VARS : RSignType = 118 ; pub const RSignType_R_SIGN_TYPES : RSignType = 116 ; pub const RSignType_R_SIGN_COLLISIONS : RSignType = 67 ; pub const RSignType_R_SIGN_NEXT : RSignType = 78 ; pub const RSignType_R_SIGN_BBHASH : RSignType = 104 ; pub const RSignType_R_SIGN_END : RSignType = 0 ; pub type RSignType = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_sign_graph_t { pub cc : :: std :: os :: raw :: c_int , pub nbbs : :: std :: os :: raw :: c_int , pub edges : :: std :: os :: raw :: c_int , pub ebbs : :: std :: os :: raw :: c_int , pub bbsum : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_sign_graph_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_graph_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_graph_t > () , 20usize , concat ! ("Size of: " , stringify ! (r_sign_graph_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_graph_t > () , 4usize , concat ! ("Alignment of " , stringify ! (r_sign_graph_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (cc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbbs) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (nbbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . edges) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (edges))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ebbs) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (ebbs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbsum) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_graph_t) , "::" , stringify ! (bbsum))) ; } pub type RSignGraph = r_sign_graph_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_bytes_t { pub size : :: std :: os :: raw :: c_int , pub bytes : * mut u8 , pub mask : * mut u8 , } # [test] fn bindgen_test_layout_r_sign_bytes_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_bytes_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_bytes_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_sign_bytes_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_bytes_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_bytes_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mask) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_bytes_t) , "::" , stringify ! (mask))) ; } impl Default for r_sign_bytes_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignBytes = r_sign_bytes_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_hash_t { pub bbhash : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_sign_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_hash_t > () , 8usize , concat ! ("Size of: " , stringify ! (r_sign_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbhash) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_hash_t) , "::" , stringify ! (bbhash))) ; } impl Default for r_sign_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignHash = r_sign_hash_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub realname : * mut :: std :: os :: raw :: c_char , pub rawname : * mut :: std :: os :: raw :: c_char , pub demangled : * mut :: std :: os :: raw :: c_char , pub next : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub types : * mut :: std :: os :: raw :: c_char , pub space : * const RSpace , pub bytes : * mut RSignBytes , pub graph : * mut RSignGraph , pub addr : u64 , pub refs : * mut RList , pub xrefs : * mut RList , pub collisions : * mut RList , pub vars : * mut RList , pub hash : * mut RSignHash , } # [test] fn bindgen_test_layout_r_sign_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_item_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_sign_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . realname) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (realname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rawname) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (rawname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . demangled) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (demangled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . types) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (types))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . space) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (space))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (bytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . refs) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (refs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . xrefs) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (xrefs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . collisions) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (collisions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vars) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (vars))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hash) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_sign_item_t) , "::" , stringify ! (hash))) ; } impl Default for r_sign_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignItem = r_sign_item_t ; pub type RSignForeachCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , user : * mut :: std :: os :: raw :: c_void) -> bool > ; pub type RSignSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , kw : * mut RSearchKeyword , addr : u64 , user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int > ; pub type RSignMatchCallback = :: std :: option :: Option < unsafe extern "C" fn (it : * mut RSignItem , fcn : * mut RAnalFunction , stypes : * mut RSignType , user : * mut :: std :: os :: raw :: c_void , col : * mut RList) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_search_met { pub stypes : [RSignType ; 18usize] , pub mincc : :: std :: os :: raw :: c_int , pub minsz : :: std :: os :: raw :: c_int , pub anal : * mut RAnal , pub user : * mut :: std :: os :: raw :: c_void , pub cb : RSignMatchCallback , } # [test] fn bindgen_test_layout_r_sign_search_met () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_search_met > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_search_met > () , 104usize , concat ! ("Size of: " , stringify ! (r_sign_search_met))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_search_met > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_search_met))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stypes) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (stypes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mincc) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (mincc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minsz) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (minsz))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_met) , "::" , stringify ! (cb))) ; } impl Default for r_sign_search_met { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignSearchMetrics = r_sign_search_met ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_sign_search_t { pub search : * mut RSearch , pub items : * mut RList , pub cb : RSignSearchCallback , pub user : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_sign_search_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_search_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_search_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_sign_search_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_search_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_search_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . search) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . items) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (items))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (cb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_sign_search_t) , "::" , stringify ! (user))) ; } impl Default for r_sign_search_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSignSearch = r_sign_search_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_sign_options_t { pub bytes_diff_threshold : f64 , pub graph_diff_threshold : f64 , } # [test] fn bindgen_test_layout_r_sign_options_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_sign_options_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_sign_options_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_sign_options_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_sign_options_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_sign_options_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes_diff_threshold) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_sign_options_t) , "::" , stringify ! (bytes_diff_threshold))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph_diff_threshold) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_sign_options_t) , "::" , stringify ! (graph_diff_threshold))) ; } pub type RSignOptions = r_sign_options_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RSignCloseMatch { pub score : f64 , pub bscore : f64 , pub gscore : f64 , pub item : * mut RSignItem , } # [test] fn bindgen_test_layout_RSignCloseMatch () { const UNINIT : :: std :: mem :: MaybeUninit < RSignCloseMatch > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RSignCloseMatch > () , 32usize , concat ! ("Size of: " , stringify ! (RSignCloseMatch))) ; assert_eq ! (:: std :: mem :: align_of :: < RSignCloseMatch > () , 8usize , concat ! ("Alignment of " , stringify ! (RSignCloseMatch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . score) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (score))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bscore) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (bscore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gscore) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (gscore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . item) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RSignCloseMatch) , "::" , stringify ! (item))) ; } impl Default for RSignCloseMatch { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_sign_add_bytes (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_anal (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , val : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_graph (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , graph : RSignGraph) -> bool ; } extern "C" { pub fn r_sign_all_functions (a : * mut RAnal , merge : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_add_func (a : * mut RAnal , fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_addto_item (a : * mut RAnal , it : * mut RSignItem , fcn : * mut RAnalFunction , type_ : RSignType) -> bool ; } extern "C" { pub fn r_sign_add_addr (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , addr : u64) -> bool ; } extern "C" { pub fn r_sign_add_name (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , realname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_comment (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , comment : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_types (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , types : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_add_refs (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , refs : * mut RList) -> bool ; } extern "C" { pub fn r_sign_add_xrefs (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , xrefs : * mut RList) -> bool ; } extern "C" { pub fn r_sign_add_vars (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , vars : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_delete (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_list (a : * mut RAnal , format : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_sign_get_list (a : * mut RAnal) -> * mut RList ; } extern "C" { pub fn r_sign_add_hash (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int , val : * const :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_sign_add_bb_hash (a : * mut RAnal , fcn : * mut RAnalFunction , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_calc_bbhash (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_deserialize (a : * mut RAnal , it : * mut RSignItem , k : * const :: std :: os :: raw :: c_char , v : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_get_item (a : * mut RAnal , name : * const :: std :: os :: raw :: c_char) -> * mut RSignItem ; } extern "C" { pub fn r_sign_add_item (a : * mut RAnal , it : * mut RSignItem) -> bool ; } extern "C" { pub fn r_sign_foreach (a : * mut RAnal , cb : RSignForeachCallback , user : * mut :: std :: os :: raw :: c_void) -> bool ; } extern "C" { pub fn r_sign_type_to_name (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_search_new () -> * mut RSignSearch ; } extern "C" { pub fn r_sign_search_free (ss : * mut RSignSearch) ; } extern "C" { pub fn r_sign_search_init (a : * mut RAnal , ss : * mut RSignSearch , minsz : :: std :: os :: raw :: c_int , cb : RSignSearchCallback , user : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_sign_search_update (a : * mut RAnal , ss : * mut RSignSearch , at : * mut u64 , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_resolve_collisions (a : * mut RAnal) -> bool ; } extern "C" { pub fn r_sign_metric_search (a : * mut RAnal , sm : * mut RSignSearchMetrics) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_fcn_match_metrics (sm : * mut RSignSearchMetrics , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_load (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char , merge : bool) -> bool ; } extern "C" { pub fn r_sign_load_gz (a : * mut RAnal , filename : * const :: std :: os :: raw :: c_char , merge : bool) -> bool ; } extern "C" { pub fn r_sign_path (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_sign_save (a : * mut RAnal , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_item_new () -> * mut RSignItem ; } extern "C" { pub fn r_sign_item_free (item : * mut RSignItem) ; } extern "C" { pub fn r_sign_graph_free (graph : * mut RSignGraph) ; } extern "C" { pub fn r_sign_bytes_free (bytes : * mut RSignBytes) ; } extern "C" { pub fn r_sign_hash_free (hash : * mut RSignHash) ; } extern "C" { pub fn r_sign_fcn_refs (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_fcn_xrefs (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_fcn_vars (a : * mut RAnal , fcn : * mut RAnalFunction) -> * mut RList ; } extern "C" { pub fn r_sign_is_flirt (buf : * mut RBuffer) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_sign_flirt_dump (anal : * const RAnal , flirt_file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sign_flirt_scan (anal : * mut RAnal , flirt_file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_sign_find_closest_sig (a : * mut RAnal , it : * mut RSignItem , count : :: std :: os :: raw :: c_int , score_threshold : f64) -> * mut RList ; } extern "C" { pub fn r_sign_find_closest_fcn (a : * mut RAnal , it : * mut RSignItem , count : :: std :: os :: raw :: c_int , score_threshold : f64) -> * mut RList ; } extern "C" { pub fn r_sign_close_match_free (match_ : * mut RSignCloseMatch) ; } extern "C" { pub fn r_sign_diff (a : * mut RAnal , options : * mut RSignOptions , other_space_name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_sign_diff_by_name (a : * mut RAnal , options : * mut RSignOptions , other_space_name : * const :: std :: os :: raw :: c_char , not_matching : bool) -> bool ; } extern "C" { pub fn r_sign_options_new (bytes_thresh : * const :: std :: os :: raw :: c_char , graph_thresh : * const :: std :: os :: raw :: c_char) -> * mut RSignOptions ; } extern "C" { pub fn r_sign_options_free (options : * mut RSignOptions) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RHashMD5Context { pub state : [u32 ; 4usize] , pub count : [u32 ; 2usize] , pub buffer : [u8 ; 64usize] , } # [test] fn bindgen_test_layout_RHashMD5Context () { const UNINIT : :: std :: mem :: MaybeUninit < RHashMD5Context > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RHashMD5Context > () , 88usize , concat ! ("Size of: " , stringify ! (RHashMD5Context))) ; assert_eq ! (:: std :: mem :: align_of :: < RHashMD5Context > () , 4usize , concat ! ("Alignment of " , stringify ! (RHashMD5Context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RHashMD5Context) , "::" , stringify ! (buffer))) ; } impl Default for RHashMD5Context { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RHashShaContext { pub H : [u32 ; 5usize] , pub W : [u32 ; 80usize] , pub lenW : :: std :: os :: raw :: c_int , pub sizeHi : u32 , pub sizeLo : u32 , } # [test] fn bindgen_test_layout_RHashShaContext () { const UNINIT : :: std :: mem :: MaybeUninit < RHashShaContext > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RHashShaContext > () , 352usize , concat ! ("Size of: " , stringify ! (RHashShaContext))) ; assert_eq ! (:: std :: mem :: align_of :: < RHashShaContext > () , 4usize , concat ! ("Alignment of " , stringify ! (RHashShaContext))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . H) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (H))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . W) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (W))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lenW) as usize - ptr as usize } , 340usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (lenW))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sizeHi) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (sizeHi))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sizeLo) as usize - ptr as usize } , 348usize , concat ! ("Offset of field: " , stringify ! (RHashShaContext) , "::" , stringify ! (sizeLo))) ; } impl Default for RHashShaContext { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _SHA256_CTX { pub state : [u32 ; 8usize] , pub bitcount : u64 , pub buffer : [u8 ; 64usize] , } # [test] fn bindgen_test_layout__SHA256_CTX () { const UNINIT : :: std :: mem :: MaybeUninit < _SHA256_CTX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _SHA256_CTX > () , 104usize , concat ! ("Size of: " , stringify ! (_SHA256_CTX))) ; assert_eq ! (:: std :: mem :: align_of :: < _SHA256_CTX > () , 8usize , concat ! ("Alignment of " , stringify ! (_SHA256_CTX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitcount) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (bitcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (_SHA256_CTX) , "::" , stringify ! (buffer))) ; } impl Default for _SHA256_CTX { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSha256Context = _SHA256_CTX ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct _SHA512_CTX { pub state : [u64 ; 8usize] , pub bitcount : [u64 ; 2usize] , pub buffer : [u8 ; 128usize] , } # [test] fn bindgen_test_layout__SHA512_CTX () { const UNINIT : :: std :: mem :: MaybeUninit < _SHA512_CTX > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < _SHA512_CTX > () , 208usize , concat ! ("Size of: " , stringify ! (_SHA512_CTX))) ; assert_eq ! (:: std :: mem :: align_of :: < _SHA512_CTX > () , 8usize , concat ! ("Alignment of " , stringify ! (_SHA512_CTX))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bitcount) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (bitcount))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buffer) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (_SHA512_CTX) , "::" , stringify ! (buffer))) ; } impl Default for _SHA512_CTX { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RSha512Context = _SHA512_CTX ; pub type RSha384Context = RSha512Context ; pub type utcrc = u64 ; extern "C" { pub fn r_hash_fletcher8 (d : * const u8 , length : usize) -> u8 ; } extern "C" { pub fn r_hash_fletcher16 (data : * const u8 , len : usize) -> u16 ; } extern "C" { pub fn r_hash_fletcher32 (data : * const u8 , len : usize) -> u32 ; } extern "C" { pub fn r_hash_fletcher64 (addr : * const u8 , len : usize) -> u64 ; } pub const CRC_PRESETS_CRC_PRESET_8_SMBUS : CRC_PRESETS = 0 ; pub const CRC_PRESETS_CRC_PRESET_15_CAN : CRC_PRESETS = 1 ; pub const CRC_PRESETS_CRC_PRESET_16 : CRC_PRESETS = 2 ; pub const CRC_PRESETS_CRC_PRESET_16_CITT : CRC_PRESETS = 3 ; pub const CRC_PRESETS_CRC_PRESET_16_USB : CRC_PRESETS = 4 ; pub const CRC_PRESETS_CRC_PRESET_16_HDLC : CRC_PRESETS = 5 ; pub const CRC_PRESETS_CRC_PRESET_24 : CRC_PRESETS = 6 ; pub const CRC_PRESETS_CRC_PRESET_32 : CRC_PRESETS = 7 ; pub const CRC_PRESETS_CRC_PRESET_32_ECMA_267 : CRC_PRESETS = 8 ; pub const CRC_PRESETS_CRC_PRESET_32C : CRC_PRESETS = 9 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_BZIP2 : CRC_PRESETS = 10 ; pub const CRC_PRESETS_CRC_PRESET_CRC32D : CRC_PRESETS = 11 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_MPEG2 : CRC_PRESETS = 12 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_POSIX : CRC_PRESETS = 13 ; pub const CRC_PRESETS_CRC_PRESET_CRC32Q : CRC_PRESETS = 14 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_JAMCRC : CRC_PRESETS = 15 ; pub const CRC_PRESETS_CRC_PRESET_CRC32_XFER : CRC_PRESETS = 16 ; pub const CRC_PRESETS_CRC_PRESET_CRC64 : CRC_PRESETS = 17 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_ECMA182 : CRC_PRESETS = 18 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_WE : CRC_PRESETS = 19 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_XZ : CRC_PRESETS = 20 ; pub const CRC_PRESETS_CRC_PRESET_CRC64_ISO : CRC_PRESETS = 21 ; pub const CRC_PRESETS_CRC_PRESET_SIZE : CRC_PRESETS = 22 ; pub type CRC_PRESETS = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_hash_t { pub md5 : RHashMD5Context , pub sha1 : RHashShaContext , pub sha256 : RSha256Context , pub sha384 : RSha384Context , pub sha512 : RSha512Context , pub rst : bool , pub entropy : f64 , pub digest : [u8 ; 128usize] , } # [test] fn bindgen_test_layout_r_hash_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hash_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hash_t > () , 1104usize , concat ! ("Size of: " , stringify ! (r_hash_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hash_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_hash_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . md5) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (md5))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha1) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha256) as usize - ptr as usize } , 440usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha256))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha384) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha384))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sha512) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (sha512))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rst) as usize - ptr as usize } , 960usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (rst))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entropy) as usize - ptr as usize } , 968usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (entropy))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . digest) as usize - ptr as usize } , 976usize , concat ! ("Offset of field: " , stringify ! (r_hash_t) , "::" , stringify ! (digest))) ; } impl Default for r_hash_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_hash_seed_t { pub prefix : :: std :: os :: raw :: c_int , pub buf : * mut u8 , pub len : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_r_hash_seed_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_hash_seed_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_hash_seed_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_hash_seed_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_hash_seed_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_hash_seed_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prefix) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (prefix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . buf) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_hash_seed_t) , "::" , stringify ! (len))) ; } impl Default for r_hash_seed_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RHashSeed = r_hash_seed_t ; extern "C" { pub fn r_hash_new (rst : bool , flags : u64) -> * mut r_hash_t ; } extern "C" { pub fn r_hash_free (ctx : * mut r_hash_t) ; } extern "C" { pub fn r_hash_do_sip (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_md4 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_ssdeep (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_md5 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha1 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha256 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha384 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_sha512 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_hmac_sha256 (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int , key : * const u8 , klen : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_do_elf (ctx : * mut r_hash_t , input : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut u8 ; } extern "C" { pub fn r_hash_tostring (ctx : * mut r_hash_t , name : * const :: std :: os :: raw :: c_char , data : * const u8 , len : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_name (bit : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_name_to_bits (name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_hash_size (bit : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_calculate (ctx : * mut r_hash_t , algobit : u64 , input : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_deviation (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_adler32 (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> u32 ; } extern "C" { pub fn r_hash_xxhash (buf : * const u8 , len : u64) -> u32 ; } extern "C" { pub fn r_hash_xor (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_xorpair (a : * const u8 , len : u64) -> u16 ; } extern "C" { pub fn r_hash_parity (buf : * const u8 , len : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_mod255 (b : * const u8 , len : u64) -> u8 ; } extern "C" { pub fn r_hash_luhn (buf : * const u8 , len : u64) -> u64 ; } extern "C" { pub fn r_hash_ssdeep (buf : * const u8 , len : usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_hash_crc_preset (data : * const u8 , size : u32 , preset : CRC_PRESETS) -> utcrc ; } extern "C" { pub fn r_hash_sip (buf : * const u8 , len : u64) -> u64 ; } extern "C" { pub fn r_hash_hamdist (buf : * const u8 , len : :: std :: os :: raw :: c_int) -> u8 ; } extern "C" { pub fn r_hash_entropy (data : * const u8 , len : u64) -> f64 ; } extern "C" { pub fn r_hash_entropy_fraction (data : * const u8 , len : u64) -> f64 ; } extern "C" { pub fn r_hash_pcprint (buffer : * const u8 , len : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_hash_do_begin (ctx : * mut r_hash_t , flags : u64) ; } extern "C" { pub fn r_hash_do_end (ctx : * mut r_hash_t , flags : u64) ; } extern "C" { pub fn r_hash_do_spice (ctx : * mut r_hash_t , algo : u64 , loops : :: std :: os :: raw :: c_int , seed : * mut RHashSeed) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_arch_t { pub bits : :: std :: os :: raw :: c_int , pub length : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bytes : * const u8 , } # [test] fn bindgen_test_layout_r_bp_arch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_arch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_arch_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_bp_arch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_arch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_arch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bytes) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_arch_t) , "::" , stringify ! (bytes))) ; } impl Default for r_bp_arch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointArch = r_bp_arch_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_plugin_t { pub meta : RPluginMeta , pub arch : * mut :: std :: os :: raw :: c_char , pub type_ : :: std :: os :: raw :: c_int , pub nbps : :: std :: os :: raw :: c_int , pub bps : * mut RBreakpointArch , } # [test] fn bindgen_test_layout_r_bp_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_bp_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbps) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (nbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bp_plugin_t) , "::" , stringify ! (bps))) ; } impl Default for r_bp_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointPlugin = r_bp_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_item_t { pub name : * mut :: std :: os :: raw :: c_char , pub module_name : * mut :: std :: os :: raw :: c_char , pub module_delta : i64 , pub addr : u64 , pub delta : u64 , pub size : :: std :: os :: raw :: c_int , pub swstep : bool , pub perm : :: std :: os :: raw :: c_int , pub hw : :: std :: os :: raw :: c_int , pub trace : :: std :: os :: raw :: c_int , pub internal : :: std :: os :: raw :: c_int , pub enabled : :: std :: os :: raw :: c_int , pub togglehits : :: std :: os :: raw :: c_int , pub hits : :: std :: os :: raw :: c_int , pub obytes : * mut u8 , pub bbytes : * mut u8 , pub pids : [:: std :: os :: raw :: c_int ; 10usize] , pub data : * mut :: std :: os :: raw :: c_char , pub cond : * mut :: std :: os :: raw :: c_char , pub expr : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_bp_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_item_t > () , 160usize , concat ! ("Size of: " , stringify ! (r_bp_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . module_name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (module_name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . module_delta) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (module_delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swstep) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (swstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hw) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (hw))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . internal) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (internal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . togglehits) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (togglehits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hits) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (hits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obytes) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (obytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bbytes) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (bbytes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pids) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (pids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cond) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . expr) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_bp_item_t) , "::" , stringify ! (expr))) ; } impl Default for r_bp_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpointItem = r_bp_item_t ; pub type RBreakpointCallback = :: std :: option :: Option < unsafe extern "C" fn (bp : * mut r_bp_t , b : * mut RBreakpointItem , set : bool) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_bp_t { pub user : * mut :: std :: os :: raw :: c_void , pub stepcont : :: std :: os :: raw :: c_int , pub endian : :: std :: os :: raw :: c_int , pub bits : :: std :: os :: raw :: c_int , pub bpinmaps : bool , pub coreb : RCoreBind , pub iob : RIOBind , pub cur : * mut RBreakpointPlugin , pub traces : * mut RList , pub plugins : * mut RList , pub breakpoint : RBreakpointCallback , pub nbps : :: std :: os :: raw :: c_int , pub nhwbps : :: std :: os :: raw :: c_int , pub bps : * mut RList , pub bps_idx : * mut * mut RBreakpointItem , pub bps_idx_count : :: std :: os :: raw :: c_int , pub delta : i64 , pub baddr : u64 , } # [test] fn bindgen_test_layout_r_bp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_bp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_bp_t > () , 568usize , concat ! ("Size of: " , stringify ! (r_bp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_bp_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_bp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stepcont) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (stepcont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . endian) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (endian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpinmaps) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bpinmaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur) as usize - ptr as usize } , 488usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (cur))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traces) as usize - ptr as usize } , 496usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (traces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 504usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breakpoint) as usize - ptr as usize } , 512usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (breakpoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nbps) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (nbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nhwbps) as usize - ptr as usize } , 524usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (nhwbps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps) as usize - ptr as usize } , 528usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps_idx) as usize - ptr as usize } , 536usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps_idx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bps_idx_count) as usize - ptr as usize } , 544usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (bps_idx_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . delta) as usize - ptr as usize } , 552usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (delta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . baddr) as usize - ptr as usize } , 560usize , concat ! ("Offset of field: " , stringify ! (r_bp_t) , "::" , stringify ! (baddr))) ; } impl Default for r_bp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RBreakpoint = r_bp_t ; extern "C" { pub fn r_bp_new () -> * mut RBreakpoint ; } extern "C" { pub fn r_bp_free (bp : * mut RBreakpoint) -> * mut RBreakpoint ; } extern "C" { pub fn r_bp_del (bp : * mut RBreakpoint , addr : u64) -> bool ; } extern "C" { pub fn r_bp_del_all (bp : * mut RBreakpoint) -> bool ; } extern "C" { pub fn r_bp_plugin_add (bp : * mut RBreakpoint , plugin : * mut RBreakpointPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_remove (bp : * mut RBreakpoint , plugin : * mut RBreakpointPlugin) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_use (bp : * mut RBreakpoint , name : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_del (bp : * mut RBreakpoint , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_plugin_list (bp : * mut RBreakpoint) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bp_in (bp : * mut RBreakpoint , addr : u64 , perm : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_list (bp : * mut RBreakpoint , rad : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_bp_size (bp : * mut RBreakpoint) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_get_bytes (bp : * mut RBreakpoint , buf : * mut u8 , len : :: std :: os :: raw :: c_int , endian : :: std :: os :: raw :: c_int , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_set_trace (bp : * mut RBreakpoint , addr : u64 , set : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_set_trace_all (bp : * mut RBreakpoint , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_enable (bp : * mut RBreakpoint , addr : u64 , set : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_enable_all (bp : * mut RBreakpoint , set : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_get_index (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_del_index (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_get_index_at (bp : * mut RBreakpoint , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_item_new (bp : * mut RBreakpoint) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_get_at (bp : * mut RBreakpoint , addr : u64) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_get_in (bp : * mut RBreakpoint , addr : u64 , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_is_valid (bp : * mut RBreakpoint , b : * mut RBreakpointItem) -> bool ; } extern "C" { pub fn r_bp_add_cond (bp : * mut RBreakpoint , cond : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_bp_del_cond (bp : * mut RBreakpoint , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_add_fault (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_add_sw (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_add_hw (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , perm : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } extern "C" { pub fn r_bp_restore_one (bp : * mut RBreakpoint , b : * mut RBreakpointItem , set : bool) ; } extern "C" { pub fn r_bp_restore (bp : * mut RBreakpoint , set : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_restore_except (bp : * mut RBreakpoint , set : bool , addr : u64) -> bool ; } extern "C" { pub fn r_bp_traptrace_free (ptr : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_bp_traptrace_enable (bp : * mut RBreakpoint , enable : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_traptrace_reset (bp : * mut RBreakpoint , hard : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_bp_traptrace_next (bp : * mut RBreakpoint , addr : u64) -> u64 ; } extern "C" { pub fn r_bp_traptrace_add (bp : * mut RBreakpoint , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_traptrace_free_at (bp : * mut RBreakpoint , from : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_bp_traptrace_list (bp : * mut RBreakpoint) ; } extern "C" { pub fn r_bp_traptrace_at (bp : * mut RBreakpoint , from : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_bp_traptrace_new () -> * mut RList ; } extern "C" { pub fn r_bp_watch_add (bp : * mut RBreakpoint , addr : u64 , size : :: std :: os :: raw :: c_int , hw : :: std :: os :: raw :: c_int , rw : :: std :: os :: raw :: c_int) -> * mut RBreakpointItem ; } pub const RDebugRecoilMode_R_DBG_RECOIL_NONE : RDebugRecoilMode = 0 ; pub const RDebugRecoilMode_R_DBG_RECOIL_STEP : RDebugRecoilMode = 1 ; pub const RDebugRecoilMode_R_DBG_RECOIL_CONTINUE : RDebugRecoilMode = 2 ; pub type RDebugRecoilMode = :: std :: os :: raw :: c_uint ; pub const RDebugReasonType_R_DEBUG_REASON_DEAD : RDebugReasonType = - 1 ; pub const RDebugReasonType_R_DEBUG_REASON_NONE : RDebugReasonType = 0 ; pub const RDebugReasonType_R_DEBUG_REASON_SIGNAL : RDebugReasonType = 1 ; pub const RDebugReasonType_R_DEBUG_REASON_BREAKPOINT : RDebugReasonType = 2 ; pub const RDebugReasonType_R_DEBUG_REASON_TRACEPOINT : RDebugReasonType = 3 ; pub const RDebugReasonType_R_DEBUG_REASON_COND : RDebugReasonType = 4 ; pub const RDebugReasonType_R_DEBUG_REASON_READERR : RDebugReasonType = 5 ; pub const RDebugReasonType_R_DEBUG_REASON_STEP : RDebugReasonType = 6 ; pub const RDebugReasonType_R_DEBUG_REASON_ABORT : RDebugReasonType = 7 ; pub const RDebugReasonType_R_DEBUG_REASON_WRITERR : RDebugReasonType = 8 ; pub const RDebugReasonType_R_DEBUG_REASON_DIVBYZERO : RDebugReasonType = 9 ; pub const RDebugReasonType_R_DEBUG_REASON_ILLEGAL : RDebugReasonType = 10 ; pub const RDebugReasonType_R_DEBUG_REASON_UNKNOWN : RDebugReasonType = 11 ; pub const RDebugReasonType_R_DEBUG_REASON_ERROR : RDebugReasonType = 12 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_PID : RDebugReasonType = 13 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_TID : RDebugReasonType = 14 ; pub const RDebugReasonType_R_DEBUG_REASON_NEW_LIB : RDebugReasonType = 15 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_PID : RDebugReasonType = 16 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_TID : RDebugReasonType = 17 ; pub const RDebugReasonType_R_DEBUG_REASON_EXIT_LIB : RDebugReasonType = 18 ; pub const RDebugReasonType_R_DEBUG_REASON_TRAP : RDebugReasonType = 19 ; pub const RDebugReasonType_R_DEBUG_REASON_SWI : RDebugReasonType = 20 ; pub const RDebugReasonType_R_DEBUG_REASON_INT : RDebugReasonType = 21 ; pub const RDebugReasonType_R_DEBUG_REASON_FPU : RDebugReasonType = 22 ; pub const RDebugReasonType_R_DEBUG_REASON_USERSUSP : RDebugReasonType = 23 ; pub const RDebugReasonType_R_DEBUG_REASON_SEGFAULT : RDebugReasonType = 24 ; pub const RDebugReasonType_R_DEBUG_REASON_STOPPED : RDebugReasonType = 25 ; pub const RDebugReasonType_R_DEBUG_REASON_TERMINATED : RDebugReasonType = 26 ; pub type RDebugReasonType = :: std :: os :: raw :: c_int ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_reason_t { pub type_ : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub signum : :: std :: os :: raw :: c_int , pub bp_addr : u64 , pub timestamp : u64 , pub addr : u64 , pub ptr : u64 , } # [test] fn bindgen_test_layout_r_debug_reason_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_reason_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_reason_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_debug_reason_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_reason_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_reason_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signum) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (signum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp_addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (bp_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . timestamp) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (timestamp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ptr) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_reason_t) , "::" , stringify ! (ptr))) ; } pub type RDebugReason = r_debug_reason_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_map_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub addr_end : u64 , pub size : u64 , pub offset : u64 , pub file : * mut :: std :: os :: raw :: c_char , pub perm : :: std :: os :: raw :: c_int , pub user : :: std :: os :: raw :: c_int , pub shared : bool , } # [test] fn bindgen_test_layout_r_debug_map_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_map_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_map_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_debug_map_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_map_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_map_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (addr_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . offset) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shared) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_map_t) , "::" , stringify ! (shared))) ; } impl Default for r_debug_map_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugMap = r_debug_map_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_desc_t { pub fd : :: std :: os :: raw :: c_int , pub path : * mut :: std :: os :: raw :: c_char , pub perm : :: std :: os :: raw :: c_int , pub type_ : :: std :: os :: raw :: c_int , pub off : u64 , } # [test] fn bindgen_test_layout_r_debug_desc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_desc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_desc_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_debug_desc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_desc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_desc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (fd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . off) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_t) , "::" , stringify ! (off))) ; } impl Default for r_debug_desc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugDesc = r_debug_desc_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_snap_t { pub name : * mut :: std :: os :: raw :: c_char , pub addr : u64 , pub addr_end : u64 , pub size : u32 , pub data : * mut u8 , pub perm : :: std :: os :: raw :: c_int , pub user : :: std :: os :: raw :: c_int , pub shared : bool , pub crc : u32 , pub comment : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_debug_snap_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_snap_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_snap_t > () , 64usize , concat ! ("Size of: " , stringify ! (r_debug_snap_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_snap_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_snap_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr_end) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (addr_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . shared) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (shared))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . crc) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (crc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_snap_t) , "::" , stringify ! (comment))) ; } impl Default for r_debug_snap_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugSnap = r_debug_snap_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_checkpoint_t { pub cnum : :: std :: os :: raw :: c_int , pub arena : [* mut RRegArena ; 10usize] , pub snaps : * mut RList , } # [test] fn bindgen_test_layout_r_debug_checkpoint_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_checkpoint_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_checkpoint_t > () , 96usize , concat ! ("Size of: " , stringify ! (r_debug_checkpoint_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_checkpoint_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_checkpoint_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cnum) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (cnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arena) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (arena))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snaps) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_checkpoint_t) , "::" , stringify ! (snaps))) ; } impl Default for r_debug_checkpoint_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugCheckpoint = r_debug_checkpoint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_session_t { pub cnum : u32 , pub maxcnum : u32 , pub cur_chkpt : * mut RDebugCheckpoint , pub checkpoints : * mut RVector , pub memory : * mut [u64 ; 11usize] , pub registers : * mut [u64 ; 11usize] , pub reasontype : :: std :: os :: raw :: c_int , pub bp : * mut RBreakpointItem , } # [test] fn bindgen_test_layout_r_debug_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_session_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_debug_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cnum) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (cnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxcnum) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (maxcnum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_chkpt) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (cur_chkpt))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . checkpoints) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (checkpoints))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . memory) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (memory))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . registers) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (registers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reasontype) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (reasontype))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_session_t) , "::" , stringify ! (bp))) ; } impl Default for r_debug_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugSession = r_debug_session_t ; pub type RVecDebugTracepoint = r_vec_RVecDebugTracepoint_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_trace_t { pub traces : * mut RVecDebugTracepoint , pub count : :: std :: os :: raw :: c_int , pub enabled : :: std :: os :: raw :: c_int , pub tag : :: std :: os :: raw :: c_int , pub dup : :: std :: os :: raw :: c_int , pub addresses : * mut :: std :: os :: raw :: c_char , pub ht : * mut [u64 ; 11usize] , } # [test] fn bindgen_test_layout_r_debug_trace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_trace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_trace_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_debug_trace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_trace_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_trace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . traces) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (traces))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . enabled) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (enabled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (dup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addresses) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (addresses))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ht) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_trace_t) , "::" , stringify ! (ht))) ; } impl Default for r_debug_trace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugTrace = r_debug_trace_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_tracepoint_item_t { pub addr : u64 , pub tags : u64 , pub tag : :: std :: os :: raw :: c_int , pub size : :: std :: os :: raw :: c_int , pub count : :: std :: os :: raw :: c_int , pub times : :: std :: os :: raw :: c_int , pub stamp : u64 , } # [test] fn bindgen_test_layout_r_debug_tracepoint_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_tracepoint_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_tracepoint_item_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_debug_tracepoint_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_tracepoint_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_tracepoint_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tags) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (tags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (tag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . count) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . times) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (times))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stamp) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_tracepoint_item_t) , "::" , stringify ! (stamp))) ; } pub type RDebugTracepointItem = r_debug_tracepoint_item_t ; pub type RDebug = r_debug_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_info_t { pub pid : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub uid : :: std :: os :: raw :: c_int , pub gid : :: std :: os :: raw :: c_int , pub usr : * mut :: std :: os :: raw :: c_char , pub exe : * mut :: std :: os :: raw :: c_char , pub cmdline : * mut :: std :: os :: raw :: c_char , pub libname : * mut :: std :: os :: raw :: c_char , pub cwd : * mut :: std :: os :: raw :: c_char , pub status : :: std :: os :: raw :: c_int , pub signum : :: std :: os :: raw :: c_int , pub lib : * mut :: std :: os :: raw :: c_void , pub thread : * mut :: std :: os :: raw :: c_void , pub kernel_stack : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_debug_info_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_info_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_info_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_debug_info_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_info_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_info_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . usr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (usr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . exe) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (exe))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdline) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (cmdline))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . libname) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (libname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cwd) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (cwd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signum) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (signum))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lib) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (lib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kernel_stack) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_info_t) , "::" , stringify ! (kernel_stack))) ; } impl Default for r_debug_info_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugInfo = r_debug_info_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_debug_desc_plugin_t { pub open : :: std :: option :: Option < unsafe extern "C" fn (path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub close : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub read : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub write : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub seek : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int > , pub dup : :: std :: option :: Option < unsafe extern "C" fn (fd : :: std :: os :: raw :: c_int , newfd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > , pub list : :: std :: option :: Option < unsafe extern "C" fn (pid : :: std :: os :: raw :: c_int) -> * mut RList > , } # [test] fn bindgen_test_layout_r_debug_desc_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_desc_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_desc_plugin_t > () , 56usize , concat ! ("Size of: " , stringify ! (r_debug_desc_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_desc_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_desc_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (open))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . read) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . write) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seek) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (seek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dup) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (dup))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . list) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_desc_plugin_t) , "::" , stringify ! (list))) ; } pub type RDebugDescPlugin = r_debug_desc_plugin_t ; pub type RDebugPluginSession = r_debug_plugin_session_t ; pub type RDebugCmdCb = :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_plugin_t { pub meta : RPluginMeta , pub bits : RSysBits , pub arch : * const :: std :: os :: raw :: c_char , pub canstep : :: std :: os :: raw :: c_int , pub keepio : :: std :: os :: raw :: c_int , pub init_plugin : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , ds : * mut RDebugPluginSession) -> bool > , pub fini_plugin : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , ds : * mut RDebugPluginSession) -> bool > , pub info : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , arg : * const :: std :: os :: raw :: c_char) -> * mut RDebugInfo > , pub startv : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub attach : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool > , pub detach : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool > , pub select : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int) -> bool > , pub threads : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub pids : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub tids : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList > , pub backtrace : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , count : :: std :: os :: raw :: c_int) -> RList > , pub stop : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub step : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub step_over : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub cont : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool > , pub wait : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> RDebugReasonType > , pub gcore : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , dest : * mut RBuffer) -> bool > , pub kill : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool > , pub kill_list : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub contsc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , sc : :: std :: os :: raw :: c_int) -> bool > , pub frames : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , at : u64) -> * mut RList > , pub breakpoint : RBreakpointCallback , pub reg_read : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , buf : * mut u8 , size : :: std :: os :: raw :: c_int) -> bool > , pub reg_write : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , buf : * const u8 , size : :: std :: os :: raw :: c_int) -> bool > , pub reg_profile : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut :: std :: os :: raw :: c_char > , pub set_reg_profile : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub map_get : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub modules_get : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> * mut RList > , pub map_alloc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , thp : bool) -> * mut RDebugMap > , pub map_dealloc : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int) -> bool > , pub map_protect : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , perms : :: std :: os :: raw :: c_int) -> bool > , pub init_debugger : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug) -> bool > , pub drx : :: std :: option :: Option < unsafe extern "C" fn (dbg : * mut RDebug , n : :: std :: os :: raw :: c_int , addr : u64 , size : :: std :: os :: raw :: c_int , rwx : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int , api_type : :: std :: os :: raw :: c_int) -> bool > , pub desc : RDebugDescPlugin , pub cmd : RDebugCmdCb , } # [test] fn bindgen_test_layout_r_debug_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_plugin_t > () , 416usize , concat ! ("Size of: " , stringify ! (r_debug_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . canstep) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (canstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keepio) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (keepio))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init_plugin) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (init_plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini_plugin) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (fini_plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . info) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (info))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . startv) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (startv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . attach) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (attach))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . detach) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (detach))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . select) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (select))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pids) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (pids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tids) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (tids))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . backtrace) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (backtrace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (stop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . step) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . step_over) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (step_over))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cont) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (cont))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . wait) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (wait))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gcore) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (gcore))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (kill))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . kill_list) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (kill_list))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . contsc) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (contsc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . frames) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (frames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . breakpoint) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (breakpoint))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_read) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_read))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_write) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_write))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_profile) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (reg_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_reg_profile) as usize - ptr as usize } , 288usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (set_reg_profile))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_get) as usize - ptr as usize } , 296usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . modules_get) as usize - ptr as usize } , 304usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (modules_get))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_alloc) as usize - ptr as usize } , 312usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_alloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_dealloc) as usize - ptr as usize } , 320usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_dealloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . map_protect) as usize - ptr as usize } , 328usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (map_protect))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init_debugger) as usize - ptr as usize } , 336usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (init_debugger))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . drx) as usize - ptr as usize } , 344usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (drx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 352usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 408usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_t) , "::" , stringify ! (cmd))) ; } impl Default for r_debug_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugPlugin = r_debug_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_plugin_session_t { pub dbg : * mut RDebug , pub plugin : * mut RDebugPlugin , pub plugin_data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_debug_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_debug_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin_data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_plugin_session_t) , "::" , stringify ! (plugin_data))) ; } impl Default for r_debug_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RVecDebugPluginSession = r_vec_RVecDebugPluginSession_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_t { pub arch : * mut :: std :: os :: raw :: c_char , pub bits : :: std :: os :: raw :: c_int , pub hitinfo : :: std :: os :: raw :: c_int , pub main_pid : :: std :: os :: raw :: c_int , pub pid : :: std :: os :: raw :: c_int , pub tid : :: std :: os :: raw :: c_int , pub forked_pid : :: std :: os :: raw :: c_int , pub n_threads : :: std :: os :: raw :: c_int , pub threads : * mut RList , pub malloc : * mut :: std :: os :: raw :: c_char , pub bpsize : :: std :: os :: raw :: c_int , pub btalgo : * mut :: std :: os :: raw :: c_char , pub btdepth : :: std :: os :: raw :: c_int , pub regcols : :: std :: os :: raw :: c_int , pub swstep : :: std :: os :: raw :: c_int , pub stop_all_threads : :: std :: os :: raw :: c_int , pub trace_forks : :: std :: os :: raw :: c_int , pub trace_execs : :: std :: os :: raw :: c_int , pub trace_aftersyscall : :: std :: os :: raw :: c_int , pub trace_clone : :: std :: os :: raw :: c_int , pub follow_child : :: std :: os :: raw :: c_int , pub glob_libs : * mut :: std :: os :: raw :: c_char , pub glob_unlibs : * mut :: std :: os :: raw :: c_char , pub consbreak : bool , pub continue_all_threads : bool , pub steps : :: std :: os :: raw :: c_int , pub reason : RDebugReason , pub recoil_mode : RDebugRecoilMode , pub stopaddr : u64 , pub trace : * mut RDebugTrace , pub tracenodes : * mut Sdb , pub tree : * mut RTree , pub call_frames : * mut RList , pub reg : * mut RReg , pub q_regs : * mut RList , pub creg : * const :: std :: os :: raw :: c_char , pub bp : * mut RBreakpoint , pub snap_path : * mut :: std :: os :: raw :: c_char , pub cb_printf : PrintfCallback , pub iob : RIOBind , pub current : * mut RDebugPluginSession , pub plugins : * mut RVecDebugPluginSession , pub user : * mut :: std :: os :: raw :: c_void , pub pc_at_bp : bool , pub pc_at_bp_set : bool , pub ev : * mut REvent , pub anal : * mut RAnal , pub maps : * mut RList , pub maps_user : * mut RList , pub snaps : * mut RList , pub trace_continue : bool , pub cur_op : * mut RAnalOp , pub session : * mut RDebugSession , pub sgnls : * mut Sdb , pub coreb : RCoreBind , pub pj : * mut PJ , pub _mode : :: std :: os :: raw :: c_int , pub num : * mut RNum , pub egg : * mut REgg , pub verbose : bool , pub maxsnapsize : usize , pub main_arena_resolved : bool , pub glibc_version_resolved : bool , pub glibc_version : :: std :: os :: raw :: c_int , pub glibc_version_d : f64 , } # [test] fn bindgen_test_layout_r_debug_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_t > () , 912usize , concat ! ("Size of: " , stringify ! (r_debug_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . arch) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (arch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bits) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hitinfo) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (hitinfo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_pid) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (main_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tid) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . forked_pid) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (forked_pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_threads) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (n_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . threads) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . malloc) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (malloc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bpsize) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bpsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btalgo) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (btalgo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . btdepth) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (btdepth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . regcols) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (regcols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . swstep) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (swstep))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stop_all_threads) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (stop_all_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_forks) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_forks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_execs) as usize - ptr as usize } , 92usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_execs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_aftersyscall) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_aftersyscall))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_clone) as usize - ptr as usize } , 100usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_clone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . follow_child) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (follow_child))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob_libs) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glob_libs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob_unlibs) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glob_unlibs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . consbreak) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (consbreak))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . continue_all_threads) as usize - ptr as usize } , 129usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (continue_all_threads))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . steps) as usize - ptr as usize } , 132usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (steps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reason) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (reason))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . recoil_mode) as usize - ptr as usize } , 184usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (recoil_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stopaddr) as usize - ptr as usize } , 192usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (stopaddr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace) as usize - ptr as usize } , 200usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tracenodes) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tracenodes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tree) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (tree))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call_frames) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (call_frames))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . q_regs) as usize - ptr as usize } , 240usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (q_regs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . creg) as usize - ptr as usize } , 248usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (creg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bp) as usize - ptr as usize } , 256usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (bp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snap_path) as usize - ptr as usize } , 264usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (snap_path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb_printf) as usize - ptr as usize } , 272usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (cb_printf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iob) as usize - ptr as usize } , 280usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (iob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current) as usize - ptr as usize } , 576usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (current))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 584usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 592usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc_at_bp) as usize - ptr as usize } , 600usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pc_at_bp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc_at_bp_set) as usize - ptr as usize } , 601usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pc_at_bp_set))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 608usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 616usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps) as usize - ptr as usize } , 624usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maps_user) as usize - ptr as usize } , 632usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maps_user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snaps) as usize - ptr as usize } , 640usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (snaps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trace_continue) as usize - ptr as usize } , 648usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (trace_continue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_op) as usize - ptr as usize } , 656usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (cur_op))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . session) as usize - ptr as usize } , 664usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (session))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sgnls) as usize - ptr as usize } , 672usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (sgnls))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coreb) as usize - ptr as usize } , 680usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (coreb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pj) as usize - ptr as usize } , 848usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (pj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _mode) as usize - ptr as usize } , 856usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 864usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . egg) as usize - ptr as usize } , 872usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (egg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . verbose) as usize - ptr as usize } , 880usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (verbose))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxsnapsize) as usize - ptr as usize } , 888usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (maxsnapsize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_arena_resolved) as usize - ptr as usize } , 896usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (main_arena_resolved))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version_resolved) as usize - ptr as usize } , 897usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version_resolved))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version) as usize - ptr as usize } , 900usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glibc_version_d) as usize - ptr as usize } , 904usize , concat ! ("Offset of field: " , stringify ! (r_debug_t) , "::" , stringify ! (glibc_version_d))) ; } impl Default for r_debug_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_debug_pid_t { pub pid : :: std :: os :: raw :: c_int , pub ppid : :: std :: os :: raw :: c_int , pub status : :: std :: os :: raw :: c_char , pub runnable : :: std :: os :: raw :: c_int , pub signalled : bool , pub path : * mut :: std :: os :: raw :: c_char , pub uid : :: std :: os :: raw :: c_int , pub gid : :: std :: os :: raw :: c_int , pub pc : u64 , } # [test] fn bindgen_test_layout_r_debug_pid_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_debug_pid_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_debug_pid_t > () , 48usize , concat ! ("Size of: " , stringify ! (r_debug_pid_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_debug_pid_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_debug_pid_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ppid) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (ppid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . status) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (status))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . runnable) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (runnable))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . signalled) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (signalled))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uid) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (uid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gid) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (gid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pc) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_debug_pid_t) , "::" , stringify ! (pc))) ; } impl Default for r_debug_pid_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RDebugPid = r_debug_pid_t ; extern "C" { pub fn r_debug_new (hard : :: std :: os :: raw :: c_int) -> * mut RDebug ; } extern "C" { pub fn r_debug_free (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_attach (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_detach (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_startv (dbg : * mut RDebug , argc : :: std :: os :: raw :: c_int , argv : * mut * mut :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_start (dbg : * mut RDebug , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_stop_reason (dbg : * mut RDebug) -> RDebugReasonType ; } extern "C" { pub fn r_debug_reason_tostring (type_ : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_wait (dbg : * mut RDebug , bp : * mut * mut RBreakpointItem) -> RDebugReasonType ; } extern "C" { pub fn r_debug_cmd (dbg : * mut RDebug , s : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step_over (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_until (dbg : * mut RDebug , addr : u64) -> bool ; } extern "C" { pub fn r_debug_continue_until_nonblock (dbg : * mut RDebug , addr : u64) -> bool ; } extern "C" { pub fn r_debug_continue_until_optype (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , over : bool) -> bool ; } extern "C" { pub fn r_debug_continue_until_nontraced (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_continue_syscall (dbg : * mut RDebug , sc : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_syscalls (dbg : * mut RDebug , sc : * mut :: std :: os :: raw :: c_int , n_sc : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_kill (dbg : * mut RDebug , signal : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_with_signal (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_contsc (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_select (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_pid_list (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_pid_new (path : * const :: std :: os :: raw :: c_char , pid : :: std :: os :: raw :: c_int , uid : :: std :: os :: raw :: c_int , status : :: std :: os :: raw :: c_char , pc : u64) -> * mut RDebugPid ; } extern "C" { pub fn r_debug_pid_free (pid : * mut RDebugPid) -> * mut RDebugPid ; } extern "C" { pub fn r_debug_pids (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_debug_set_arch (dbg : * mut RDebug , arch : * const :: std :: os :: raw :: c_char , bits : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_use (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_info (dbg : * mut RDebug , arg : * const :: std :: os :: raw :: c_char) -> * mut RDebugInfo ; } extern "C" { pub fn r_debug_info_free (rdi : * mut RDebugInfo) ; } extern "C" { pub fn r_debug_get_baddr (dbg : * mut RDebug , file : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_debug_signal_init (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_signal_fini (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_signal_send (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_what (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_resolve (dbg : * mut RDebug , signame : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_resolve_i (dbg : * mut RDebug , signum : :: std :: os :: raw :: c_int) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_signal_setup (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int , opt : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_signal_set (dbg : * mut RDebug , num : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_signal_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_debug_kill (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , tid : :: std :: os :: raw :: c_int , sig : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_kill_list (dbg : * mut RDebug) -> * mut RList ; } extern "C" { pub fn r_debug_kill_setup (dbg : * mut RDebug , sig : :: std :: os :: raw :: c_int , action : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_init_plugins (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_fini_plugins (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_plugin_set (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_plugin_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_plugin_add (dbg : * mut RDebug , plugin : * mut RDebugPlugin) -> bool ; } extern "C" { pub fn r_debug_plugin_remove (dbg : * mut RDebug , plugin : * mut RDebugPlugin) -> bool ; } extern "C" { pub fn r_debug_plugin_set_reg_profile (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_modules_list (arg1 : * mut RDebug) -> * mut RList ; } extern "C" { pub fn r_debug_map_alloc (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , thp : bool) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_dealloc (dbg : * mut RDebug , map : * mut RDebugMap) -> bool ; } extern "C" { pub fn r_debug_map_list_new () -> * mut RList ; } extern "C" { pub fn r_debug_map_get (dbg : * mut RDebug , addr : u64) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_new (name : * mut :: std :: os :: raw :: c_char , addr : u64 , addr_end : u64 , perm : :: std :: os :: raw :: c_int , user : :: std :: os :: raw :: c_int) -> * mut RDebugMap ; } extern "C" { pub fn r_debug_map_free (map : * mut RDebugMap) ; } extern "C" { pub fn r_debug_map_list (dbg : * mut RDebug , addr : u64 , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_map_list_visual (dbg : * mut RDebug , addr : u64 , input : * const :: std :: os :: raw :: c_char , colors : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_desc_new (fd : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , type_ : :: std :: os :: raw :: c_int , off : :: std :: os :: raw :: c_int) -> * mut RDebugDesc ; } extern "C" { pub fn r_debug_desc_free (p : * mut RDebugDesc) ; } extern "C" { pub fn r_debug_desc_open (dbg : * mut RDebug , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_close (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_dup (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , newfd : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_read (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_seek (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_write (dbg : * mut RDebug , fd : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_desc_list (dbg : * mut RDebug , show_commands : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_reg_sync (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , write : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_reg_list (dbg : * mut RDebug , type_ : :: std :: os :: raw :: c_int , size : :: std :: os :: raw :: c_int , pj : * mut PJ , rad : :: std :: os :: raw :: c_int , use_color : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_reg_set (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char , num : u64) -> bool ; } extern "C" { pub fn r_debug_reg_get (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_debug_reg_get_err (dbg : * mut RDebug , name : * const :: std :: os :: raw :: c_char , err : * mut bool , value : * mut utX) -> u64 ; } extern "C" { pub fn r_debug_execute (dbg : * mut RDebug , buf : * const u8 , len : :: std :: os :: raw :: c_int , ret : * mut u64 , restore : bool , ignore_stack : bool) -> bool ; } extern "C" { pub fn r_debug_map_sync (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_stop (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_frames (dbg : * mut RDebug , at : u64) -> * mut RList ; } extern "C" { pub fn r_debug_is_dead (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_map_protect (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int , perms : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_arg_get (dbg : * mut RDebug , cc : * const :: std :: os :: raw :: c_char , num : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_debug_arg_set (dbg : * mut RDebug , cc : * const :: std :: os :: raw :: c_char , num : :: std :: os :: raw :: c_int , value : u64) -> bool ; } extern "C" { pub fn r_debug_bp_add (dbg : * mut RDebug , addr : u64 , hw : :: std :: os :: raw :: c_int , watch : bool , rw : :: std :: os :: raw :: c_int , module : * mut :: std :: os :: raw :: c_char , m_delta : i64) -> * mut RBreakpointItem ; } extern "C" { pub fn r_debug_bp_rebase (dbg : * mut RDebug , old_base : u64 , new_base : u64) ; } extern "C" { pub fn r_debug_bp_update (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_thread_list (dbg : * mut RDebug , pid : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_tracenodes_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_trace_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_trace_pc (dbg : * mut RDebug , pc : u64) -> bool ; } extern "C" { pub fn r_debug_trace_op (dbg : * mut RDebug , op : * mut RAnalOp) ; } extern "C" { pub fn r_debug_trace_at (dbg : * mut RDebug , str_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_trace_get (dbg : * mut RDebug , addr : u64) -> * mut RDebugTracepointItem ; } extern "C" { pub fn r_debug_trace_list (dbg : * mut RDebug , mode : :: std :: os :: raw :: c_int , offset : u64 , t : * mut RTable) ; } extern "C" { pub fn r_debug_trace_add (dbg : * mut RDebug , addr : u64 , size : :: std :: os :: raw :: c_int) -> * mut RDebugTracepointItem ; } extern "C" { pub fn r_debug_trace_new () -> * mut RDebugTrace ; } extern "C" { pub fn r_debug_trace_free (dbg : * mut RDebugTrace) ; } extern "C" { pub fn r_debug_trace_tag (dbg : * mut RDebug , tag : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_child_fork (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_child_clone (dbg : * mut RDebug) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_drx_list (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_drx_set (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , addr : u64 , len : :: std :: os :: raw :: c_int , rwx : :: std :: os :: raw :: c_int , g : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_drx_get (dbg : * mut RDebug , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_drx_unset (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_debug_esil_stepi (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_esil_step (dbg : * mut RDebug , count : u32) -> u64 ; } extern "C" { pub fn r_debug_esil_continue (dbg : * mut RDebug) -> u64 ; } extern "C" { pub fn r_debug_esil_watch (dbg : * mut RDebug , rwx : :: std :: os :: raw :: c_int , dev : :: std :: os :: raw :: c_int , expr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_debug_esil_watch_reset (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_esil_watch_list (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_esil_watch_empty (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_esil_prestep (d : * mut RDebug , p : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_add_checkpoint (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_session_add_reg_change (session : * mut RDebugSession , arena : :: std :: os :: raw :: c_int , offset : u64 , data : u64) -> bool ; } extern "C" { pub fn r_debug_session_add_mem_change (session : * mut RDebugSession , addr : u64 , data : u8) -> bool ; } extern "C" { pub fn r_debug_session_restore_reg_mem (dbg : * mut RDebug , cnum : u32) ; } extern "C" { pub fn r_debug_session_list_memory (dbg : * mut RDebug) ; } extern "C" { pub fn r_debug_session_serialize (session : * mut RDebugSession , db : * mut Sdb) ; } extern "C" { pub fn r_debug_session_deserialize (session : * mut RDebugSession , db : * mut Sdb) ; } extern "C" { pub fn r_debug_session_save (session : * mut RDebugSession , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_session_load (dbg : * mut RDebug , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_debug_trace_ins_before (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_trace_ins_after (dbg : * mut RDebug) -> bool ; } extern "C" { pub fn r_debug_session_new () -> * mut RDebugSession ; } extern "C" { pub fn r_debug_session_free (session : * mut RDebugSession) ; } extern "C" { pub fn r_debug_snap_map (dbg : * mut RDebug , map : * mut RDebugMap) -> * mut RDebugSnap ; } extern "C" { pub fn r_debug_snap_contains (snap : * mut RDebugSnap , addr : u64) -> bool ; } extern "C" { pub fn r_debug_snap_get_hash (snap : * mut RDebugSnap) -> * mut u8 ; } extern "C" { pub fn r_debug_snap_is_equal (a : * mut RDebugSnap , b : * mut RDebugSnap) -> bool ; } extern "C" { pub fn r_debug_snap_free (snap : * mut RDebugSnap) ; } extern "C" { pub fn r_debug_snap_delete (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_list (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_debug_snap_diff (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap (dbg : * mut RDebug , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_comment (dbg : * mut RDebug , idx : :: std :: os :: raw :: c_int , msg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_snap_all (dbg : * mut RDebug , perms : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_step_back (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_goto_cnum (dbg : * mut RDebug , cnum : u32) -> bool ; } extern "C" { pub fn r_debug_step_cnum (dbg : * mut RDebug , steps : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_debug_continue_back (dbg : * mut RDebug) -> bool ; } pub const r_vc_type_t_RVC_TYPE_RVC : r_vc_type_t = 0 ; pub const r_vc_type_t_RVC_TYPE_GIT : r_vc_type_t = 1 ; pub const r_vc_type_t_RVC_TYPE_ANY : r_vc_type_t = 2 ; pub const r_vc_type_t_RVC_TYPE_INV : r_vc_type_t = 3 ; pub type r_vc_type_t = :: std :: os :: raw :: c_uint ; pub use self :: r_vc_type_t as RvcType ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_vc_t { pub path : * mut :: std :: os :: raw :: c_char , pub db : * mut Sdb , pub p : * const rvc_plugin_t , } # [test] fn bindgen_test_layout_r_vc_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vc_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vc_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_vc_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vc_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_vc_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . db) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (db))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . p) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vc_t) , "::" , stringify ! (p))) ; } impl Default for r_vc_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type Rvc = r_vc_t ; pub type RvcPluginBranch = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , bname : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginCommit = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , message : * const :: std :: os :: raw :: c_char , author : * const :: std :: os :: raw :: c_char , files : * const RList) -> bool > ; pub type RvcPluginCheckout = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t , bname : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginBranches = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut RList > ; pub type RvcPluginClose = :: std :: option :: Option < unsafe extern "C" fn (vc : * mut r_vc_t , save : bool) > ; pub type RvcPluginCurrentBranch = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut :: std :: os :: raw :: c_char > ; pub type RvcPluginPrintCommits = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> bool > ; pub type RvcPluginUncommited = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> * mut RList > ; pub type RvcPluginReset = :: std :: option :: Option < unsafe extern "C" fn (rvc : * mut r_vc_t) -> bool > ; pub type RvcPluginClone = :: std :: option :: Option < unsafe extern "C" fn (rvc : * const r_vc_t , dst : * const :: std :: os :: raw :: c_char) -> bool > ; pub type RvcPluginSave = :: std :: option :: Option < unsafe extern "C" fn (vc : * mut r_vc_t) -> bool > ; pub type RvcPluginOpen = :: std :: option :: Option < unsafe extern "C" fn (path : * const :: std :: os :: raw :: c_char) -> * mut Rvc > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct rvc_plugin_t { pub name : * const :: std :: os :: raw :: c_char , pub author : * const :: std :: os :: raw :: c_char , pub desc : * const :: std :: os :: raw :: c_char , pub license : * const :: std :: os :: raw :: c_char , pub type_ : RvcType , pub commit : RvcPluginCommit , pub checkout : RvcPluginCheckout , pub branch : RvcPluginBranch , pub branches : RvcPluginBranches , pub curbranch : RvcPluginCurrentBranch , pub uncommited : RvcPluginUncommited , pub log : RvcPluginPrintCommits , pub reset : RvcPluginReset , pub clone : RvcPluginClone , pub close : RvcPluginClose , pub save : RvcPluginSave , pub open : RvcPluginOpen , } # [test] fn bindgen_test_layout_rvc_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < rvc_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < rvc_plugin_t > () , 136usize , concat ! ("Size of: " , stringify ! (rvc_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < rvc_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (rvc_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . author) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (author))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . desc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (desc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . license) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (license))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . commit) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (commit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . checkout) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (checkout))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branch) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (branch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . branches) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (branches))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curbranch) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (curbranch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . uncommited) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (uncommited))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reset) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (reset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . clone) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (clone))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . close) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (close))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . save) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (save))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . open) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (rvc_plugin_t) , "::" , stringify ! (open))) ; } impl Default for rvc_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_vc_new (path : * const :: std :: os :: raw :: c_char) -> * mut Rvc ; } extern "C" { pub fn r_vc_checkout (rvc : * mut Rvc , bname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_vc_get_uncommitted (rvc : * mut Rvc) -> * mut RList ; } extern "C" { pub fn r_vc_log (rvc : * mut Rvc) -> bool ; } extern "C" { pub fn r_vc_current_branch (rvc : * mut Rvc) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_vc_reset (rvc : * mut Rvc) -> bool ; } extern "C" { pub fn r_vc_clone (rvc : * const Rvc , dst : * const :: std :: os :: raw :: c_char) -> bool ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_t { pub h : * mut r_muta_plugin_t , pub bigendian : bool , pub user : * mut :: std :: os :: raw :: c_void , pub plugins : * mut RList , } # [test] fn bindgen_test_layout_r_muta_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_muta_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bigendian) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (bigendian))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_muta_t) , "::" , stringify ! (plugins))) ; } impl Default for r_muta_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMuta = r_muta_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_session_t { pub h : * mut r_muta_plugin_t , pub c : * mut r_muta_t , pub flag : :: std :: os :: raw :: c_int , pub key : * mut u8 , pub iv : * mut u8 , pub key_len : :: std :: os :: raw :: c_int , pub output : * mut u8 , pub output_len : :: std :: os :: raw :: c_int , pub output_size : :: std :: os :: raw :: c_int , pub dir : :: std :: os :: raw :: c_int , pub plugins : * mut RList , pub sm4_sk : [u32 ; 32usize] , pub data : * mut :: std :: os :: raw :: c_void , pub cps2key : [u32 ; 2usize] , pub rot_key : u8 , pub entropy : f64 , } # [test] fn bindgen_test_layout_r_muta_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_session_t > () , 240usize , concat ! ("Size of: " , stringify ! (r_muta_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (c))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flag) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (flag))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iv) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key_len) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output_len) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . output_size) as usize - ptr as usize } , 60usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (output_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dir) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (dir))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugins) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (plugins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sm4_sk) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (sm4_sk))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 208usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cps2key) as usize - ptr as usize } , 216usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (cps2key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rot_key) as usize - ptr as usize } , 224usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (rot_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . entropy) as usize - ptr as usize } , 232usize , concat ! ("Offset of field: " , stringify ! (r_muta_session_t) , "::" , stringify ! (entropy))) ; } impl Default for r_muta_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMutaSession = r_muta_session_t ; pub const RMutaType_R_MUTA_TYPE_HASH : RMutaType = 0 ; pub const RMutaType_R_MUTA_TYPE_BASE : RMutaType = 1 ; pub const RMutaType_R_MUTA_TYPE_CRYPTO : RMutaType = 2 ; pub const RMutaType_R_MUTA_TYPE_SIGN : RMutaType = 3 ; pub const RMutaType_R_MUTA_TYPE_CHARSET : RMutaType = 4 ; pub const RMutaType_R_MUTA_TYPE_ALL : RMutaType = - 1 ; pub type RMutaType = :: std :: os :: raw :: c_int ; pub type RMutaSessionSetIVCallback = :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , iv : * const u8 , ivlen : :: std :: os :: raw :: c_int) -> bool > ; pub type RMutaSessionUpdateCallback = :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_muta_plugin_t { pub meta : RPluginMeta , pub implements : * const :: std :: os :: raw :: c_char , pub type_ : RMutaType , pub check : :: std :: option :: Option < unsafe extern "C" fn (algo : * const :: std :: os :: raw :: c_char) -> bool > , pub get_key_size : :: std :: option :: Option < unsafe extern "C" fn (cry : * mut RMutaSession) -> :: std :: os :: raw :: c_int > , pub set_iv : RMutaSessionSetIVCallback , pub set_key : :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , key : * const u8 , keylen : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , direction : :: std :: os :: raw :: c_int) -> bool > , pub begin : :: std :: option :: Option < unsafe extern "C" fn (cry : * mut RMuta) -> * mut RMutaSession > , pub update : RMutaSessionUpdateCallback , pub end : :: std :: option :: Option < unsafe extern "C" fn (ci : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool > , pub fini : :: std :: option :: Option < unsafe extern "C" fn (cj : * mut RMutaSession) -> bool > , } # [test] fn bindgen_test_layout_r_muta_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_muta_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_muta_plugin_t > () , 144usize , concat ! ("Size of: " , stringify ! (r_muta_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_muta_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_muta_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . implements) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (implements))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . check) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (check))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_key_size) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (get_key_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_iv) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (set_iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . set_key) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (set_key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . begin) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (begin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . update) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (update))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . end) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_muta_plugin_t) , "::" , stringify ! (fini))) ; } impl Default for r_muta_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RMutaPlugin = r_muta_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RMutaOptions { pub iv : * mut u8 , pub key : * mut u8 , pub key_len : usize , pub direction : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_RMutaOptions () { const UNINIT : :: std :: mem :: MaybeUninit < RMutaOptions > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RMutaOptions > () , 32usize , concat ! ("Size of: " , stringify ! (RMutaOptions))) ; assert_eq ! (:: std :: mem :: align_of :: < RMutaOptions > () , 8usize , concat ! ("Alignment of " , stringify ! (RMutaOptions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . iv) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (iv))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (key))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . key_len) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (key_len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . direction) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RMutaOptions) , "::" , stringify ! (direction))) ; } impl Default for RMutaOptions { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_muta_init (cry : * mut RMuta) ; } extern "C" { pub fn r_muta_add (cry : * mut RMuta , h : * mut RMutaPlugin) -> bool ; } extern "C" { pub fn r_muta_new () -> * mut RMuta ; } extern "C" { pub fn r_muta_free (cry : * mut RMuta) ; } extern "C" { pub fn r_muta_list (cry : * mut RMuta , type_ : RMutaType , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_muta_use (cry : * mut RMuta , algo : * const :: std :: os :: raw :: c_char) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_set_key (cry : * mut RMutaSession , key : * const u8 , keylen : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int , direction : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_set_iv (cry : * mut RMutaSession , iv : * const u8 , ivlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_new_session (mu : * mut RMuta , algo : * const :: std :: os :: raw :: c_char , opt : * mut RMutaOptions) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_new (cry : * mut RMuta , cp : * mut RMutaPlugin) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_free (cj : * mut RMutaSession) ; } extern "C" { pub fn r_muta_begin (cry : * mut RMuta) -> * mut RMutaSession ; } extern "C" { pub fn r_muta_session_update (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_end (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_muta_session_append (cry : * mut RMutaSession , buf : * const u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_muta_session_get_output (cry : * mut RMutaSession , size : * mut :: std :: os :: raw :: c_int) -> * mut u8 ; } pub const RCoreVisualMode_R_CORE_VISUAL_MODE_PX : RCoreVisualMode = 0 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_PD : RCoreVisualMode = 1 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_DB : RCoreVisualMode = 2 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_OV : RCoreVisualMode = 3 ; pub const RCoreVisualMode_R_CORE_VISUAL_MODE_CD : RCoreVisualMode = 4 ; pub type RCoreVisualMode = :: std :: os :: raw :: c_uint ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_plugin_session_t { pub core : * mut RCore , pub plugin : * mut r_core_plugin_t , pub data : * mut :: std :: os :: raw :: c_void , } # [test] fn bindgen_test_layout_r_core_plugin_session_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_plugin_session_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_plugin_session_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_core_plugin_session_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_plugin_session_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_plugin_session_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . plugin) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (plugin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_session_t) , "::" , stringify ! (data))) ; } impl Default for r_core_plugin_session_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCorePluginSession = r_core_plugin_session_t ; pub type RCorePluginLife = :: std :: option :: Option < unsafe extern "C" fn (ctx : * mut RCorePluginSession) -> bool > ; pub type RCorePluginCall = :: std :: option :: Option < unsafe extern "C" fn (ctx : * mut RCorePluginSession , input : * const :: std :: os :: raw :: c_char) -> bool > ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_plugin_t { pub meta : RPluginMeta , pub init : RCorePluginLife , pub fini : RCorePluginLife , pub call : RCorePluginCall , } # [test] fn bindgen_test_layout_r_core_plugin_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_plugin_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_plugin_t > () , 88usize , concat ! ("Size of: " , stringify ! (r_core_plugin_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_plugin_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_plugin_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . meta) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (meta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . init) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (init))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fini) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (fini))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . call) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_plugin_t) , "::" , stringify ! (call))) ; } impl Default for r_core_plugin_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCorePlugin = r_core_plugin_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_rtr_host_t { pub proto : :: std :: os :: raw :: c_int , pub host : [:: std :: os :: raw :: c_char ; 512usize] , pub port : :: std :: os :: raw :: c_int , pub file : [:: std :: os :: raw :: c_char ; 1024usize] , pub fd : * mut RSocket , } # [test] fn bindgen_test_layout_r_core_rtr_host_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_rtr_host_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_rtr_host_t > () , 1552usize , concat ! ("Size of: " , stringify ! (r_core_rtr_host_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_rtr_host_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_rtr_host_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . proto) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (proto))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . host) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . port) as usize - ptr as usize } , 516usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (port))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file) as usize - ptr as usize } , 520usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (file))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fd) as usize - ptr as usize } , 1544usize , concat ! ("Offset of field: " , stringify ! (r_core_rtr_host_t) , "::" , stringify ! (fd))) ; } impl Default for r_core_rtr_host_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreRtrHost = r_core_rtr_host_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_undo_t { pub action : * mut :: std :: os :: raw :: c_char , pub revert : * mut :: std :: os :: raw :: c_char , pub tstamp : u64 , pub addr : u64 , } # [test] fn bindgen_test_layout_r_core_undo_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_undo_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_undo_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_undo_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_undo_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_undo_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . action) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (action))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . revert) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (revert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tstamp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (tstamp))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_undo_t) , "::" , stringify ! (addr))) ; } impl Default for r_core_undo_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreUndo = r_core_undo_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreUndoCondition { pub addr : u64 , pub glob : * const :: std :: os :: raw :: c_char , pub minstamp : u64 , } # [test] fn bindgen_test_layout_RCoreUndoCondition () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreUndoCondition > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreUndoCondition > () , 24usize , concat ! ("Size of: " , stringify ! (RCoreUndoCondition))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreUndoCondition > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreUndoCondition))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . glob) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (glob))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . minstamp) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreUndoCondition) , "::" , stringify ! (minstamp))) ; } impl Default for RCoreUndoCondition { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_log_t { pub first : :: std :: os :: raw :: c_int , pub last : :: std :: os :: raw :: c_int , pub sp : * mut RStrpool , } # [test] fn bindgen_test_layout_r_core_log_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_log_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_log_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_core_log_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_log_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_log_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . first) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (first))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . last) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (last))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sp) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_log_t) , "::" , stringify ! (sp))) ; } impl Default for r_core_log_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreLog = r_core_log_t ; # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_core_times_t { pub loadlibs_init_time : u64 , pub loadlibs_time : u64 , pub file_open_time : u64 , pub file_anal_time : u64 , } # [test] fn bindgen_test_layout_r_core_times_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_times_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_times_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_times_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_times_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_times_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadlibs_init_time) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (loadlibs_init_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . loadlibs_time) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (loadlibs_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_open_time) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (file_open_time))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . file_anal_time) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_times_t) , "::" , stringify ! (file_anal_time))) ; } pub type RCoreTimes = r_core_times_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_autocomplete_t { pub cmd : * mut :: std :: os :: raw :: c_char , pub length : :: std :: os :: raw :: c_int , pub n_subcmds : :: std :: os :: raw :: c_int , pub locked : bool , pub type_ : :: std :: os :: raw :: c_int , pub subcmds : * mut * mut r_core_autocomplete_t , } # [test] fn bindgen_test_layout_r_core_autocomplete_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_autocomplete_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_autocomplete_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_autocomplete_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_autocomplete_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_autocomplete_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . length) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (length))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . n_subcmds) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (n_subcmds))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . locked) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (locked))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . subcmds) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_autocomplete_t) , "::" , stringify ! (subcmds))) ; } impl Default for r_core_autocomplete_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreAutocomplete = r_core_autocomplete_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_visual_t { pub printidx : RCoreVisualMode , pub tabs : * mut RList , pub tab : :: std :: os :: raw :: c_int , pub textedit_mode : bool , pub obs : :: std :: os :: raw :: c_int , pub ime : bool , pub imes : bool , pub nib : :: std :: os :: raw :: c_int , pub blocksize : :: std :: os :: raw :: c_int , pub autoblocksize : bool , pub disMode : :: std :: os :: raw :: c_int , pub hexMode : :: std :: os :: raw :: c_int , pub printMode : :: std :: os :: raw :: c_int , pub snowMode : bool , pub snows : * mut RList , pub color : :: std :: os :: raw :: c_int , pub zoom : :: std :: os :: raw :: c_int , pub currentFormat : :: std :: os :: raw :: c_int , pub current0format : :: std :: os :: raw :: c_int , pub numbuf : [:: std :: os :: raw :: c_char ; 32usize] , pub numbuf_i : :: std :: os :: raw :: c_int , pub splitView : bool , pub splitPtr : u64 , pub current3format : :: std :: os :: raw :: c_int , pub current4format : :: std :: os :: raw :: c_int , pub current5format : :: std :: os :: raw :: c_int , pub hold : * mut RConfigHold , pub oldpc : u64 , pub oseek : u64 , pub debugstr : [:: std :: os :: raw :: c_char ; 512usize] , pub firstRun : bool , pub fromVisual : bool , pub fromVmatrix : bool , pub menus_Colors : [* mut :: std :: os :: raw :: c_char ; 128usize] , pub discroll : :: std :: os :: raw :: c_int , pub mousemode : :: std :: os :: raw :: c_int , pub graphCursor : bool , pub coming_from_vmark : bool , } # [test] fn bindgen_test_layout_r_core_visual_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_visual_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_visual_t > () , 1736usize , concat ! ("Size of: " , stringify ! (r_core_visual_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_visual_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_visual_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . printidx) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (printidx))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tabs) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (tabs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tab) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (tab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . textedit_mode) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (textedit_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . obs) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (obs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ime) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (ime))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . imes) as usize - ptr as usize } , 29usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (imes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . nib) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (nib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (blocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autoblocksize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (autoblocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . disMode) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (disMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hexMode) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (hexMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . printMode) as usize - ptr as usize } , 52usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (printMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snowMode) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (snowMode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . snows) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (snows))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . color) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (color))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . zoom) as usize - ptr as usize } , 76usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (zoom))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . currentFormat) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (currentFormat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current0format) as usize - ptr as usize } , 84usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current0format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numbuf) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (numbuf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . numbuf_i) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (numbuf_i))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . splitView) as usize - ptr as usize } , 124usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (splitView))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . splitPtr) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (splitPtr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current3format) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current3format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current4format) as usize - ptr as usize } , 140usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current4format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current5format) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (current5format))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . hold) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (hold))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oldpc) as usize - ptr as usize } , 160usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (oldpc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . oseek) as usize - ptr as usize } , 168usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (oseek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . debugstr) as usize - ptr as usize } , 176usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (debugstr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . firstRun) as usize - ptr as usize } , 688usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (firstRun))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fromVisual) as usize - ptr as usize } , 689usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (fromVisual))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fromVmatrix) as usize - ptr as usize } , 690usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (fromVmatrix))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . menus_Colors) as usize - ptr as usize } , 696usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (menus_Colors))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . discroll) as usize - ptr as usize } , 1720usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (discroll))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mousemode) as usize - ptr as usize } , 1724usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (mousemode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graphCursor) as usize - ptr as usize } , 1728usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (graphCursor))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . coming_from_vmark) as usize - ptr as usize } , 1729usize , concat ! ("Offset of field: " , stringify ! (r_core_visual_t) , "::" , stringify ! (coming_from_vmark))) ; } impl Default for r_core_visual_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreVisual = r_core_visual_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreGadget { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , pub w : :: std :: os :: raw :: c_int , pub h : :: std :: os :: raw :: c_int , pub cmd : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_RCoreGadget () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreGadget > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreGadget > () , 24usize , concat ! ("Size of: " , stringify ! (RCoreGadget))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreGadget > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreGadget))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (y))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . w) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (w))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . h) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (h))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreGadget) , "::" , stringify ! (cmd))) ; } impl Default for RCoreGadget { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_core_gadget_free (g : * mut RCoreGadget) ; } pub type RCoreTaskCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , out : * mut :: std :: os :: raw :: c_char) > ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_COOP : r_core_task_mode_t = 0 ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_THREAD : r_core_task_mode_t = 1 ; pub const r_core_task_mode_t_R_CORE_TASK_MODE_FORK : r_core_task_mode_t = 2 ; pub type r_core_task_mode_t = :: std :: os :: raw :: c_uint ; pub use self :: r_core_task_mode_t as RCoreTaskMode ; pub const r_core_task_state_t_R_CORE_TASK_STATE_BEFORE_START : r_core_task_state_t = 0 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_RUNNING : r_core_task_state_t = 1 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_SLEEPING : r_core_task_state_t = 2 ; pub const r_core_task_state_t_R_CORE_TASK_STATE_DONE : r_core_task_state_t = 3 ; pub type r_core_task_state_t = :: std :: os :: raw :: c_uint ; pub use self :: r_core_task_state_t as RTaskState ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_task_t { pub id : :: std :: os :: raw :: c_int , pub state : RTaskState , pub transient : bool , pub running_sem : * mut RThreadSemaphore , pub user : * mut :: std :: os :: raw :: c_void , pub core : * mut RCore , pub mode : RCoreTaskMode , pub task_core : * mut RCore , pub thread : * mut RThread , pub pid : :: std :: os :: raw :: c_int , pub dispatched : bool , pub dispatch_cond : * mut RThreadCond , pub dispatch_lock : * mut RThreadLock , pub cmd : * mut :: std :: os :: raw :: c_char , pub res : * mut :: std :: os :: raw :: c_char , pub cmd_log : bool , pub cons_context : * mut RConsContext , pub cb : RCoreTaskCallback , } # [test] fn bindgen_test_layout_r_core_task_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_task_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_task_t > () , 128usize , concat ! ("Size of: " , stringify ! (r_core_task_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_task_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_task_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . id) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (id))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . state) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (state))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . transient) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (transient))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . running_sem) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (running_sem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . user) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (user))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . core) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mode) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . task_core) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (task_core))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . thread) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (thread))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . pid) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (pid))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatched) as usize - ptr as usize } , 68usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatched))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatch_cond) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatch_cond))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dispatch_lock) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (dispatch_lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . res) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (res))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_log) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cmd_log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons_context) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cons_context))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cb) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_task_t) , "::" , stringify ! (cb))) ; } impl Default for r_core_task_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreTask = r_core_task_t ; # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_tasks_t { pub task_id_next : :: std :: os :: raw :: c_int , pub tasks : * mut RList , pub tasks_queue : * mut RList , pub current_task : * mut r_core_task_t , pub main_task : * mut r_core_task_t , pub lock : * mut RThreadLock , pub tasks_running : :: std :: os :: raw :: c_int , pub foreground_task : * mut r_core_task_t , pub default_mode : RCoreTaskMode , pub main_core : * mut RCore , } # [test] fn bindgen_test_layout_r_core_tasks_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_tasks_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_tasks_t > () , 80usize , concat ! ("Size of: " , stringify ! (r_core_tasks_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_tasks_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_tasks_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . task_id_next) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (task_id_next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks_queue) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks_queue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . current_task) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (current_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_task) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (main_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks_running) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (tasks_running))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . foreground_task) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (foreground_task))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . default_mode) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (default_mode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . main_core) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_tasks_t) , "::" , stringify ! (main_core))) ; } impl Default for r_core_tasks_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreTaskScheduler = r_core_tasks_t ; extern "C" { pub fn r_core_task_scheduler_init (tasks : * mut RCoreTaskScheduler , core : * mut RCore) ; } extern "C" { pub fn r_core_task_scheduler_fini (tasks : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_get (scheduler : * mut RCoreTaskScheduler , id : :: std :: os :: raw :: c_int) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_running_tasks_count (scheduler : * mut RCoreTaskScheduler) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_status (task : * mut RCoreTask) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_task_new (core : * mut RCore , mode : RCoreTaskMode , create_cons : bool , cmd : * const :: std :: os :: raw :: c_char , cb : RCoreTaskCallback , user : * mut :: std :: os :: raw :: c_void) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_enqueue (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_run_sync (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_sync_begin (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_sync_end (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_yield (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_sleep_begin (task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_sleep_end (task : * mut RCoreTask) ; } extern "C" { pub fn r_core_task_del (scheduler : * mut RCoreTaskScheduler , id : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_del_all_done (scheduler : * mut RCoreTaskScheduler) ; } extern "C" { pub fn r_core_task_self (scheduler : * mut RCoreTaskScheduler) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_join (scheduler : * mut RCoreTaskScheduler , current : * mut RCoreTask , id : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_task_set_foreground (scheduler : * mut RCoreTaskScheduler , task_id : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_task_get_foreground (scheduler : * mut RCoreTaskScheduler) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_set_default_mode (scheduler : * mut RCoreTaskScheduler , mode : RCoreTaskMode) ; } extern "C" { pub fn r_core_task_get_default_mode (scheduler : * mut RCoreTaskScheduler) -> RCoreTaskMode ; } extern "C" { pub fn r_core_task_run (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_run_threaded (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_run_forked (scheduler : * mut RCoreTaskScheduler , task : * mut RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_submit (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , cb : RCoreTaskCallback , user : * mut :: std :: os :: raw :: c_void , capture_cons : bool , mode : :: std :: os :: raw :: c_int) -> * mut RCoreTask ; } extern "C" { pub fn r_core_task_id (t : * const RCoreTask) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_task_wait (t : * mut RCoreTask , timeout_ms : u64) -> bool ; } extern "C" { pub fn r_core_task_cancel (t : * mut RCoreTask , hard : bool) -> bool ; } extern "C" { pub fn r_core_task_cancel_all (core : * mut RCore , hard : bool) ; } extern "C" { pub fn r_core_task_free (t : * mut RCoreTask) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_project_t { pub name : * mut :: std :: os :: raw :: c_char , pub path : * mut :: std :: os :: raw :: c_char , pub rvc : * mut r_vc_t , } # [test] fn bindgen_test_layout_r_core_project_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_project_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_project_t > () , 24usize , concat ! ("Size of: " , stringify ! (r_core_project_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_project_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_project_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (name))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . path) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (path))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rvc) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_project_t) , "::" , stringify ! (rvc))) ; } impl Default for r_core_project_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RProject = r_core_project_t ; extern "C" { pub fn r_project_new () -> * mut RProject ; } extern "C" { pub fn r_core_is_project (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_rename (p : * mut RProject , newname : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_is_git (p : * mut RProject) -> bool ; } extern "C" { pub fn r_project_close (p : * mut RProject) ; } extern "C" { pub fn r_project_open (p : * mut RProject , prjname : * const :: std :: os :: raw :: c_char , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_project_save (p : * mut RProject) ; } extern "C" { pub fn r_project_free (p : * mut RProject) ; } extern "C" { pub fn r_project_is_loaded (p : * mut RProject) -> bool ; } extern "C" { pub fn r_core_project_is_dirty (core : * mut RCore) -> bool ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct VisualMark { pub addr : u64 , pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , } # [test] fn bindgen_test_layout_VisualMark () { const UNINIT : :: std :: mem :: MaybeUninit < VisualMark > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < VisualMark > () , 16usize , concat ! ("Size of: " , stringify ! (VisualMark))) ; assert_eq ! (:: std :: mem :: align_of :: < VisualMark > () , 8usize , concat ! ("Alignment of " , stringify ! (VisualMark))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . x) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (x))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . y) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (VisualMark) , "::" , stringify ! (y))) ; } # [repr (C)] # [derive (Copy , Clone)] pub struct r_core_esil_t { pub esil : REsil , pub __bindgen_anon_1 : r_core_esil_t__bindgen_ty_1 , pub tr_reg : u32 , pub tr_mem : u32 , pub reg : * mut RReg , pub cmd_step : * mut :: std :: os :: raw :: c_char , pub cmd_step_out : * mut :: std :: os :: raw :: c_char , pub cmd_intr : * mut :: std :: os :: raw :: c_char , pub cmd_trap : * mut :: std :: os :: raw :: c_char , pub cmd_mdev : * mut :: std :: os :: raw :: c_char , pub cmd_todo : * mut :: std :: os :: raw :: c_char , pub cmd_ioer : * mut :: std :: os :: raw :: c_char , pub mdev_range : * mut :: std :: os :: raw :: c_char , pub cfg : u8 , } # [repr (C)] # [derive (Copy , Clone)] pub union r_core_esil_t__bindgen_ty_1 { pub trap_revert : RStrBuf , pub old_pc : u64 , } # [test] fn bindgen_test_layout_r_core_esil_t__bindgen_ty_1 () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_esil_t__bindgen_ty_1 > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_esil_t__bindgen_ty_1 > () , 64usize , concat ! ("Size of: " , stringify ! (r_core_esil_t__bindgen_ty_1))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_esil_t__bindgen_ty_1 > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_esil_t__bindgen_ty_1))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . trap_revert) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t__bindgen_ty_1) , "::" , stringify ! (trap_revert))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . old_pc) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t__bindgen_ty_1) , "::" , stringify ! (old_pc))) ; } impl Default for r_core_esil_t__bindgen_ty_1 { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [test] fn bindgen_test_layout_r_core_esil_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_esil_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_esil_t > () , 832usize , concat ! ("Size of: " , stringify ! (r_core_esil_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_esil_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_esil_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tr_reg) as usize - ptr as usize } , 744usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (tr_reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tr_mem) as usize - ptr as usize } , 748usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (tr_mem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg) as usize - ptr as usize } , 752usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (reg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step) as usize - ptr as usize } , 760usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_step))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_step_out) as usize - ptr as usize } , 768usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_step_out))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_intr) as usize - ptr as usize } , 776usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_intr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_trap) as usize - ptr as usize } , 784usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_trap))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_mdev) as usize - ptr as usize } , 792usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_mdev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_todo) as usize - ptr as usize } , 800usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_todo))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd_ioer) as usize - ptr as usize } , 808usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cmd_ioer))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . mdev_range) as usize - ptr as usize } , 816usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (mdev_range))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfg) as usize - ptr as usize } , 824usize , concat ! ("Offset of field: " , stringify ! (r_core_esil_t) , "::" , stringify ! (cfg))) ; } impl Default for r_core_esil_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreEsil = r_core_esil_t ; # [repr (C)] # [derive (Copy , Clone)] pub struct r_core_t { pub bin : * mut RBin , pub config : * mut RConfig , pub prj : * mut RProject , pub addr : u64 , pub prompt_addr : u64 , pub blocksize : u32 , pub blocksize_max : u32 , pub block : * mut u8 , pub yank_buf : * mut RBuffer , pub yank_addr : u64 , pub tmpseek : bool , pub vmode : bool , pub cons : * mut RCons , pub muta : * mut RMuta , pub io : * mut RIO , pub num : * mut RNum , pub rc : u64 , pub lib : * mut RLib , pub rcmd : * mut RCmd , pub anal : * mut RAnal , pub rasm : * mut RAsm , pub esil : RCoreEsil , pub times : * mut RCoreTimes , pub print : * mut RPrint , pub lang : * mut RLang , pub dbg : * mut RDebug , pub flags : * mut RFlag , pub search : * mut RSearch , pub fs : * mut RFS , pub rfs : * mut RFSShell , pub egg : * mut REgg , pub log : * mut RCoreLog , pub graph : * mut RAGraph , pub panels_root : * mut RPanelsRoot , pub panels : * mut RPanels , pub cmdqueue : * mut RList , pub magic : * mut magic_set , pub lastcmd : * mut :: std :: os :: raw :: c_char , pub cmdlog : * mut :: std :: os :: raw :: c_char , pub cfglog : bool , pub cmdrepeat : :: std :: os :: raw :: c_int , pub cmdtimes : * const :: std :: os :: raw :: c_char , pub rtr_n : :: std :: os :: raw :: c_int , pub rtr_host : [RCoreRtrHost ; 255usize] , pub asmqjmps : * mut u64 , pub asmqjmps_count : :: std :: os :: raw :: c_int , pub asmqjmps_size : :: std :: os :: raw :: c_int , pub get_next : bool , pub is_asmqjmps_letter : bool , pub keep_asmqjmps : bool , pub visual : RCoreVisual , pub http_up : bool , pub gdbserver_up : bool , pub stkcmd : * mut :: std :: os :: raw :: c_char , pub in_search : bool , pub watchers : * mut RList , pub scriptstack : * mut RList , pub tasks : RCoreTaskScheduler , pub max_cmd_depth : :: std :: os :: raw :: c_int , pub cur_cmd_depth : :: std :: os :: raw :: c_int , pub switch_file_view : u8 , pub sdb : * mut Sdb , pub incomment : :: std :: os :: raw :: c_int , pub curtab : :: std :: os :: raw :: c_int , pub seltab : :: std :: os :: raw :: c_int , pub cmdremote : * mut :: std :: os :: raw :: c_char , pub lastsearch : * mut :: std :: os :: raw :: c_char , pub cmdfilter : * mut :: std :: os :: raw :: c_char , pub break_loop : bool , pub undos : * mut RList , pub undoindex : :: std :: os :: raw :: c_int , pub binat : bool , pub fixedbits : bool , pub fixedarch : bool , pub fixedblock : bool , pub table_query : * mut :: std :: os :: raw :: c_char , pub sync_index : :: std :: os :: raw :: c_int , pub c2 : * mut r_core_t , pub table : * mut RTable , pub autocomplete : * mut RCoreAutocomplete , pub autocomplete_type : :: std :: os :: raw :: c_int , pub maxtab : :: std :: os :: raw :: c_int , pub ev : * mut REvent , pub gadgets : * mut RList , pub scr_gadgets : bool , pub log_events : bool , pub ropchain : * mut RList , pub theme : * mut :: std :: os :: raw :: c_char , pub themepath : * mut :: std :: os :: raw :: c_char , pub allbins : bool , pub marks : [VisualMark ; 256usize] , pub chan : * mut RThreadChannel , pub lock : * mut RThreadLock , pub in_log_process : bool , pub r_main_radare2 : RMainCallback , pub r_main_rafind2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_ravc2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_r2pm : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_radiff2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rafs2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rabin2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rarun2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_ragg2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rasm2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub r_main_rax2 : :: std :: option :: Option < unsafe extern "C" fn (argc : :: std :: os :: raw :: c_int , argv : * mut * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > , pub skiplines : :: std :: os :: raw :: c_int , pub priv_ : * mut :: std :: os :: raw :: c_void , pub esil_anal_stop : bool , } # [test] fn bindgen_test_layout_r_core_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_t > () , 403208usize , concat ! ("Size of: " , stringify ! (r_core_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . bin) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (bin))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . config) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (config))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prj) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (prj))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prompt_addr) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (prompt_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (blocksize))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocksize_max) as usize - ptr as usize } , 44usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (blocksize_max))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (block))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . yank_buf) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (yank_buf))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . yank_addr) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (yank_addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tmpseek) as usize - ptr as usize } , 72usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (tmpseek))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . vmode) as usize - ptr as usize } , 73usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (vmode))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cons) as usize - ptr as usize } , 80usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cons))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . muta) as usize - ptr as usize } , 88usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (muta))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . io) as usize - ptr as usize } , 96usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (io))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . num) as usize - ptr as usize } , 104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (num))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rc) as usize - ptr as usize } , 112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rc))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lib) as usize - ptr as usize } , 120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lib))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rcmd) as usize - ptr as usize } , 128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . anal) as usize - ptr as usize } , 136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (anal))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rasm) as usize - ptr as usize } , 144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rasm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil) as usize - ptr as usize } , 152usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (esil))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . times) as usize - ptr as usize } , 984usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (times))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . print) as usize - ptr as usize } , 992usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (print))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lang) as usize - ptr as usize } , 1000usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lang))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . dbg) as usize - ptr as usize } , 1008usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (dbg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 1016usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . search) as usize - ptr as usize } , 1024usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fs) as usize - ptr as usize } , 1032usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rfs) as usize - ptr as usize } , 1040usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rfs))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . egg) as usize - ptr as usize } , 1048usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (egg))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log) as usize - ptr as usize } , 1056usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (log))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . graph) as usize - ptr as usize } , 1064usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (graph))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels_root) as usize - ptr as usize } , 1072usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (panels_root))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . panels) as usize - ptr as usize } , 1080usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (panels))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdqueue) as usize - ptr as usize } , 1088usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdqueue))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . magic) as usize - ptr as usize } , 1096usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (magic))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastcmd) as usize - ptr as usize } , 1104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lastcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdlog) as usize - ptr as usize } , 1112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdlog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cfglog) as usize - ptr as usize } , 1120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cfglog))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdrepeat) as usize - ptr as usize } , 1124usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdrepeat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdtimes) as usize - ptr as usize } , 1128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdtimes))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtr_n) as usize - ptr as usize } , 1136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rtr_n))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . rtr_host) as usize - ptr as usize } , 1144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (rtr_host))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps) as usize - ptr as usize } , 396904usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps_count) as usize - ptr as usize } , 396912usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps_count))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . asmqjmps_size) as usize - ptr as usize } , 396916usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (asmqjmps_size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . get_next) as usize - ptr as usize } , 396920usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (get_next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . is_asmqjmps_letter) as usize - ptr as usize } , 396921usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (is_asmqjmps_letter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . keep_asmqjmps) as usize - ptr as usize } , 396922usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (keep_asmqjmps))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . visual) as usize - ptr as usize } , 396928usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (visual))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . http_up) as usize - ptr as usize } , 398664usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (http_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gdbserver_up) as usize - ptr as usize } , 398665usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (gdbserver_up))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . stkcmd) as usize - ptr as usize } , 398672usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (stkcmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_search) as usize - ptr as usize } , 398680usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (in_search))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . watchers) as usize - ptr as usize } , 398688usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (watchers))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scriptstack) as usize - ptr as usize } , 398696usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (scriptstack))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . tasks) as usize - ptr as usize } , 398704usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (tasks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . max_cmd_depth) as usize - ptr as usize } , 398784usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (max_cmd_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cur_cmd_depth) as usize - ptr as usize } , 398788usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cur_cmd_depth))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . switch_file_view) as usize - ptr as usize } , 398792usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (switch_file_view))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sdb) as usize - ptr as usize } , 398800usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (sdb))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . incomment) as usize - ptr as usize } , 398808usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (incomment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . curtab) as usize - ptr as usize } , 398812usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (curtab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . seltab) as usize - ptr as usize } , 398816usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (seltab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdremote) as usize - ptr as usize } , 398824usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdremote))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lastsearch) as usize - ptr as usize } , 398832usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lastsearch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmdfilter) as usize - ptr as usize } , 398840usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (cmdfilter))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . break_loop) as usize - ptr as usize } , 398848usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (break_loop))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undos) as usize - ptr as usize } , 398856usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (undos))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . undoindex) as usize - ptr as usize } , 398864usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (undoindex))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . binat) as usize - ptr as usize } , 398868usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (binat))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedbits) as usize - ptr as usize } , 398869usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedbits))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedarch) as usize - ptr as usize } , 398870usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedarch))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fixedblock) as usize - ptr as usize } , 398871usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (fixedblock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table_query) as usize - ptr as usize } , 398872usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (table_query))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sync_index) as usize - ptr as usize } , 398880usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (sync_index))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . c2) as usize - ptr as usize } , 398888usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (c2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . table) as usize - ptr as usize } , 398896usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (table))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autocomplete) as usize - ptr as usize } , 398904usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (autocomplete))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . autocomplete_type) as usize - ptr as usize } , 398912usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (autocomplete_type))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . maxtab) as usize - ptr as usize } , 398916usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (maxtab))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ev) as usize - ptr as usize } , 398920usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (ev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . gadgets) as usize - ptr as usize } , 398928usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (gadgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . scr_gadgets) as usize - ptr as usize } , 398936usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (scr_gadgets))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . log_events) as usize - ptr as usize } , 398937usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (log_events))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ropchain) as usize - ptr as usize } , 398944usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (ropchain))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . theme) as usize - ptr as usize } , 398952usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (theme))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . themepath) as usize - ptr as usize } , 398960usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (themepath))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . allbins) as usize - ptr as usize } , 398968usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (allbins))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . marks) as usize - ptr as usize } , 398976usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (marks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . chan) as usize - ptr as usize } , 403072usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (chan))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . lock) as usize - ptr as usize } , 403080usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (lock))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_log_process) as usize - ptr as usize } , 403088usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (in_log_process))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_radare2) as usize - ptr as usize } , 403096usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_radare2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rafind2) as usize - ptr as usize } , 403104usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rafind2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_ravc2) as usize - ptr as usize } , 403112usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_ravc2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_r2pm) as usize - ptr as usize } , 403120usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_r2pm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_radiff2) as usize - ptr as usize } , 403128usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_radiff2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rafs2) as usize - ptr as usize } , 403136usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rafs2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rabin2) as usize - ptr as usize } , 403144usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rabin2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rarun2) as usize - ptr as usize } , 403152usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rarun2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_ragg2) as usize - ptr as usize } , 403160usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_ragg2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rasm2) as usize - ptr as usize } , 403168usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rasm2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . r_main_rax2) as usize - ptr as usize } , 403176usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (r_main_rax2))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . skiplines) as usize - ptr as usize } , 403184usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (skiplines))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . priv_) as usize - ptr as usize } , 403192usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (priv_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . esil_anal_stop) as usize - ptr as usize } , 403200usize , concat ! ("Offset of field: " , stringify ! (r_core_t) , "::" , stringify ! (esil_anal_stop))) ; } impl Default for r_core_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_item_t { pub type_ : * const :: std :: os :: raw :: c_char , pub addr : u64 , pub next : u64 , pub prev : u64 , pub size : :: std :: os :: raw :: c_int , pub perm : :: std :: os :: raw :: c_int , pub data : * mut :: std :: os :: raw :: c_char , pub comment : * mut :: std :: os :: raw :: c_char , pub sectname : * mut :: std :: os :: raw :: c_char , pub fcnname : * mut :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_core_item_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_item_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_item_t > () , 72usize , concat ! ("Size of: " , stringify ! (r_core_item_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_item_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_item_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . type_) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (type_))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . next) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (next))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . prev) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (prev))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 36usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (perm))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . data) as usize - ptr as usize } , 40usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (data))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comment) as usize - ptr as usize } , 48usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (comment))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . sectname) as usize - ptr as usize } , 56usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (sectname))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fcnname) as usize - ptr as usize } , 64usize , concat ! ("Offset of field: " , stringify ! (r_core_item_t) , "::" , stringify ! (fcnname))) ; } impl Default for r_core_item_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreItem = r_core_item_t ; extern "C" { pub fn r_core_item_at (core : * mut RCore , addr : u64) -> * mut RCoreItem ; } extern "C" { pub fn r_core_item_free (ci : * mut RCoreItem) ; } extern "C" { pub fn r_core_bind (core : * mut RCore , bnd : * mut RCoreBind) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_cmpwatch_t { pub addr : u64 , pub size : :: std :: os :: raw :: c_int , pub cmd : * mut :: std :: os :: raw :: c_char , pub odata : * mut u8 , pub ndata : * mut u8 , } # [test] fn bindgen_test_layout_r_core_cmpwatch_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_cmpwatch_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_cmpwatch_t > () , 40usize , concat ! ("Size of: " , stringify ! (r_core_cmpwatch_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_cmpwatch_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_cmpwatch_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . size) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (size))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . cmd) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (cmd))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . odata) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (odata))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . ndata) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (r_core_cmpwatch_t) , "::" , stringify ! (ndata))) ; } impl Default for r_core_cmpwatch_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreCmpWatcher = r_core_cmpwatch_t ; pub type RCoreSearchCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , from : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_core_list_themes (core : * mut RCore) -> * mut RList ; } extern "C" { pub fn r_core_get_theme (core : * mut RCore) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_reloff (core : * mut RCore , type_ : :: std :: os :: raw :: c_int , at : u64 , delta : * mut i64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_section_name (core : * mut RCore , addr : u64) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_cons (core : * mut RCore) -> * mut RCons ; } extern "C" { pub fn r_core_get_bin (core : * mut RCore) -> * mut RBin ; } extern "C" { pub fn r_core_get_config (core : * mut RCore) -> * mut RConfig ; } extern "C" { pub fn r_core_init (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_bind_cons (core : * mut RCore) ; } extern "C" { pub fn r_core_new () -> * mut RCore ; } extern "C" { pub fn r_core_free (core : * mut RCore) ; } extern "C" { pub fn r_core_fini (c : * mut RCore) ; } extern "C" { pub fn r_core_wait (core : * mut RCore) ; } extern "C" { pub fn r_core_ncast (p : u64) -> * mut RCore ; } extern "C" { pub fn r_core_cast (p : * mut :: std :: os :: raw :: c_void) -> * mut RCore ; } extern "C" { pub fn r_core_bin_load_structs (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_config_init (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_config_update (core : * mut RCore) ; } extern "C" { pub fn r_core_parse_radare2rc (r : * mut RCore) ; } extern "C" { pub fn r_core_prompt (core : * mut RCore , sync : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_prompt_exec (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_lines_initcache (core : * mut RCore , start_addr : u64 , end_addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_lines_currline (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_prompt_loop (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_pava (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_cmd (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_task_sync (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_editor (core : * const RCore , file : * const :: std :: os :: raw :: c_char , str_ : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_fgets (cons : * mut RCons , buf : * mut :: std :: os :: raw :: c_char , len : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_flag_get_by_spaces (f : * mut RFlag , prionospace : bool , off : u64) -> * mut RFlagItem ; } extern "C" { pub fn r_core_cmdf (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmdf_at (core : * mut RCore , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd0 (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_r (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_queue (core : * mut RCore , line : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_queue_wait (core : * mut RCore) ; } extern "C" { pub fn r_core_cmd_init (core : * mut RCore) ; } extern "C" { pub fn r_core_cmd_str_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_call_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_call_str_at (core : * mut RCore , addr : u64 , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_call (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_callf (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , ...) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_pipe (core : * mut RCore , radare_cmd : * mut :: std :: os :: raw :: c_char , shell_cmd : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_str (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_str_r (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_strf (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_strf_at (core : * mut RCore , addr : u64 , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_str_pipe (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_cmd_tobuf (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_core_cmd_file (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_lines (core : * mut RCore , lines : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_command (core : * mut RCore , command : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_af (core : * mut RCore , addr : u64 , name : * const :: std :: os :: raw :: c_char , anal_calls : bool) ; } extern "C" { pub fn r_core_run_script (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_seek (core : * mut RCore , addr : u64 , rb : bool) -> bool ; } extern "C" { pub fn r_core_visual_bit_editor (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_seek_base (core : * mut RCore , hex : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_previous (core : * mut RCore , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_seek_next (core : * mut RCore , type_ : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_seek_align (core : * mut RCore , align : u64 , count : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_arch_bits_at (core : * mut RCore , addr : u64 , bits : * mut :: std :: os :: raw :: c_int , arch : * mut * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_prompt_format_help (core : * mut RCore) ; } extern "C" { pub fn r_core_prompt_format (core : * mut RCore , fmt : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_seek_arch_bits (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_readblock (core : * mut RCore , size : u64) -> * mut u8 ; } extern "C" { pub fn r_core_block_read (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_block_size (core : * mut RCore , bsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_size (core : * mut RCore , addr : u64 , bsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_shift_block (core : * mut RCore , addr : u64 , b_size : u64 , dist : i64) -> bool ; } extern "C" { pub fn r_core_autocomplete (core : * mut RCore , completion : * mut RLineCompletion , buf : * mut RLineBuffer , prompt_type : RLinePromptType) ; } extern "C" { pub fn r_core_print_scrollbar (core : * mut RCore) ; } extern "C" { pub fn r_core_print_scrollbar_bottom (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_prompt_input (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_toggle_decompiler_disasm (core : * mut RCore , for_graph : bool , reset : bool) ; } extern "C" { pub fn r_core_visual_applyDisMode (core : * mut RCore , disMode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_applyHexMode (core : * mut RCore , hexMode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_refs (core : * mut RCore , xref : bool , fcnInsteadOfAddr : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_append_help (core : * mut RCore , p : * mut RStrBuf , title : * const :: std :: os :: raw :: c_char , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_prevop_addr (core : * mut RCore , start_addr : u64 , numinstrs : :: std :: os :: raw :: c_int , prev_addr : * mut u64) -> bool ; } extern "C" { pub fn r_core_prevop_addr_force (core : * mut RCore , start_addr : u64 , numinstrs : :: std :: os :: raw :: c_int) -> u64 ; } extern "C" { pub fn r_core_visual_hudstuff (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_visual_classes (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_anal_classes (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_types (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_find (core : * mut RCore , g : * mut RAGraph) ; } extern "C" { pub fn r_core_visual_graph (core : * mut RCore , g : * mut RAGraph , _fcn : * mut RAnalFunction , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_visual_browse (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_cmd (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_seek_animation (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_visual_asm (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_visual_colors (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_xrefs_x (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_xrefs_X (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_showcursor (core : * mut RCore , x : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_offset (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_hud (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_visual_jump (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_visual_disasm_up (core : * mut RCore , cols : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_disasm_down (core : * mut RCore , op : * mut RAnalOp , cols : * mut :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_getreloc (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int) -> * mut RBinReloc ; } extern "C" { pub fn r_core_get_asmqjmps (core : * mut RCore , str_ : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_core_set_asmqjmps (core : * mut RCore , str_ : * mut :: std :: os :: raw :: c_char , len : usize , i : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_add_asmqjmp (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_panels_root (core : * mut RCore , panels_root : * mut RPanelsRoot) -> bool ; } extern "C" { pub fn r_core_panels_save (core : * mut RCore , _name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_panels_load (core : * mut RCore , _name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_anal_type_init (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_hasrefs_to_depth (core : * mut RCore , value : u64 , pj : * mut PJ , depth : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_link_stroff (core : * mut RCore , fcn : * mut RAnalFunction) ; } extern "C" { pub fn r_core_anal_inflags (core : * mut RCore , glob : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_anal_cc_init (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_paths (core : * mut RCore , from : u64 , to : u64 , followCalls : bool , followDepth : :: std :: os :: raw :: c_int , is_json : bool) ; } extern "C" { pub fn r_core_anal_esil_function (core : * mut RCore , addr : u64) ; } extern "C" { # [doc = " TODO: better name and move to anal"] pub fn r_core_list_io (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_list_lang (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_slides (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_vmark (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_vmark_set (core : * mut RCore , ch : u8 , addr : u64 , x : :: std :: os :: raw :: c_int , y : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_vmark_seek (core : * mut RCore , ch : u8 , g : * mut RAGraph) ; } extern "C" { pub fn r_core_vmark_del (core : * mut RCore , ch : u8) ; } extern "C" { pub fn r_core_vmark_dump (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_vmark_reset (core : * mut RCore) ; } extern "C" { pub fn r_core_search_cb (core : * mut RCore , from : u64 , to : u64 , cb : RCoreSearchCallback) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_serve (core : * mut RCore , fd : * mut RIODesc) -> bool ; } extern "C" { pub fn r_core_file_reopen (core : * mut RCore , args : * const :: std :: os :: raw :: c_char , perm : :: std :: os :: raw :: c_int , binload : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_file_reopen_debug (core : * mut RCore , args : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_file_reopen_remote_debug (core : * mut RCore , uri : * mut :: std :: os :: raw :: c_char , addr : u64) ; } extern "C" { pub fn r_core_file_open (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , loadaddr : u64) -> * mut RIODesc ; } extern "C" { pub fn r_core_file_open_many (r : * mut RCore , file : * const :: std :: os :: raw :: c_char , flags : :: std :: os :: raw :: c_int , loadaddr : u64) -> * mut RIODesc ; } extern "C" { pub fn r_core_file_close_all_but (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_slurp (core : * mut RCore , path : * const :: std :: os :: raw :: c_char , len : * mut usize) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_setup_debugger (r : * mut RCore , debugbackend : * const :: std :: os :: raw :: c_char , attach : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_seek_delta (core : * mut RCore , addr : i64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_extend_at (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_write_at (core : * mut RCore , addr : u64 , buf : * const u8 , size : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_write_op (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , op : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_transform_op (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , op : :: std :: os :: raw :: c_char) -> * mut u8 ; } extern "C" { pub fn r_core_set_file_by_fd (core : * mut RCore , bin_fd : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_set_file_by_name (bin : * mut RBin , name : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_debug_rr (core : * mut RCore , reg : * mut RReg , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_fortune_types () -> * mut RList ; } extern "C" { pub fn r_core_fortune_list (core : * mut RCore , types : bool) ; } extern "C" { pub fn r_core_fortune_print_random (core : * mut RCore) ; } extern "C" { pub fn r_core_yank (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_unset (core : * mut RCore) ; } extern "C" { pub fn r_core_yank_string (core : * mut RCore , addr : u64 , maxlen : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_hexpair (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_paste (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_set (core : * mut RCore , addr : u64 , buf : * const u8 , len : u32) -> bool ; } extern "C" { pub fn r_core_yank_set_str (core : * mut RCore , addr : u64 , buf : * const :: std :: os :: raw :: c_char , len : u32) -> bool ; } extern "C" { pub fn r_core_yank_to (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_dump (core : * mut RCore , pos : u64 , format : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_hexdump (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_cat (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_cat_string (core : * mut RCore , pos : u64) -> bool ; } extern "C" { pub fn r_core_yank_hud_file (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_hud_path (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , dir : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_yank_file_ex (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_yank_file_all (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_loadlibs_init (core : * mut RCore) ; } extern "C" { pub fn r_core_loadlibs (core : * mut RCore , where_ : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_buffer (core : * mut RCore , buf : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmd_foreach (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , each : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_foreach3 (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char , each : * mut :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_op_str (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_op_anal (core : * mut RCore , addr : u64 , mask : RAnalOpMask) -> * mut RAnalOp ; } extern "C" { pub fn r_core_disassemble_instr (core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_disassemble_bytes (core : * mut RCore , addr : u64 , b : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_get_func_args (core : * mut RCore , func_name : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_core_print_func_args (core : * mut RCore) ; } extern "C" { pub fn r_core_get_stacksz (core : * mut RCore , from : u64 , to : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_op (core : * mut RCore , addr : u64 , mask : :: std :: os :: raw :: c_int) -> * mut RAnalOp ; } extern "C" { pub fn r_core_anal_esil (core : * mut RCore , str_ : * const :: std :: os :: raw :: c_char , addr : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_anal_fcn_merge (core : * mut RCore , addr : u64 , addr2 : u64) ; } extern "C" { pub fn r_core_anal_optype_colorfor (core : * mut RCore , addr : u64 , ch : u8 , verbose : bool) -> * const :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_address (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_anal_undefine (core : * mut RCore , off : u64) ; } extern "C" { pub fn r_core_anal_hint_print (core : * mut RCore , addr : u64 , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_hint_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_search (core : * mut RCore , from : u64 , to : u64 , ref_ : u64 , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_search_xrefs (core : * mut RCore , from : u64 , to : u64 , pj : * mut PJ , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_data (core : * mut RCore , addr : u64 , count : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int , wordsize : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_datarefs (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_anal_coderefs (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_anal_codexrefs (core : * mut RCore , addr : u64) -> * mut RGraph ; } extern "C" { pub fn r_core_anal_importxrefs (core : * mut RCore) -> * mut RGraph ; } extern "C" { pub fn r_core_anal_callgraph (core : * mut RCore , addr : u64 , fmt : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_refs (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_agraph_print (core : * mut RCore , use_utf : :: std :: os :: raw :: c_int , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_esil_cmd (esil : * mut REsil , cmd : * const :: std :: os :: raw :: c_char , a1 : u64 , a2 : u64) -> bool ; } extern "C" { pub fn r_core_esil_step (core : * mut RCore , until_addr : u64 , until_expr : * const :: std :: os :: raw :: c_char , prev_addr : * mut u64 , stepOver : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_esil_step_back (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_anal_get_bbaddr (core : * mut RCore , addr : u64) -> u64 ; } extern "C" { pub fn r_core_anal_bb_seek (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_anal_fcn (core : * mut RCore , at : u64 , from : u64 , reftype : :: std :: os :: raw :: c_int , depth : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_anal_fcn_autoname (core : * mut RCore , fcn : * mut RAnalFunction , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_autoname_all_fcns (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_autoname_all_golang_fcns (core : * mut RCore) ; } extern "C" { pub fn r_core_anal_fcn_list (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , rad : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_fcn_name (core : * mut RCore , fcn : * mut RAnalFunction) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_fcn_list_size (core : * mut RCore) -> u64 ; } extern "C" { pub fn r_core_anal_fcn_labels (core : * mut RCore , fcn : * mut RAnalFunction , rad : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_anal_fcn_clean (core : * mut RCore , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_bb_custom (core : * mut RCore , fcn : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_graph (core : * mut RCore , addr : u64 , opts : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_anal_graph_fcn (core : * mut RCore , input : * mut :: std :: os :: raw :: c_char , opts : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_graph_to (core : * mut RCore , addr : u64 , n : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_anal_ref_list (core : * mut RCore , rad : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_anal_cycles (core : * mut RCore , ccl : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_anal_fcn_get_calls (core : * mut RCore , fcn : * mut RAnalFunction) -> * mut RVecAnalRef ; } extern "C" { pub fn r_core_anal_type_match (core : * mut RCore , fcn : * mut RAnalFunction) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_asm_hit { pub code : * mut :: std :: os :: raw :: c_char , pub len : :: std :: os :: raw :: c_int , pub addr : u64 , pub valid : u8 , } # [test] fn bindgen_test_layout_r_core_asm_hit () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_asm_hit > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_asm_hit > () , 32usize , concat ! ("Size of: " , stringify ! (r_core_asm_hit))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_asm_hit > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_asm_hit))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . code) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (code))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . len) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (len))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . valid) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (r_core_asm_hit) , "::" , stringify ! (valid))) ; } impl Default for r_core_asm_hit { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreAsmHit = r_core_asm_hit ; extern "C" { pub fn r_core_syscall (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , args : * const :: std :: os :: raw :: c_char) -> * mut RBuffer ; } extern "C" { pub fn r_core_syscallf (core : * mut RCore , name : * const :: std :: os :: raw :: c_char , fmt : * const :: std :: os :: raw :: c_char , ...) -> * mut RBuffer ; } extern "C" { pub fn r_core_asm_hit_new () -> * mut RCoreAsmHit ; } extern "C" { pub fn r_core_asm_hit_list_new () -> * mut RList ; } extern "C" { pub fn r_core_asm_hit_free (_hit : * mut :: std :: os :: raw :: c_void) ; } extern "C" { pub fn r_core_set_asm_configs (core : * mut RCore , arch : * mut :: std :: os :: raw :: c_char , bits : u32 , segoff : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_asm_search (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_asm_strsearch (core : * mut RCore , input : * const :: std :: os :: raw :: c_char , from : u64 , to : u64 , maxhits : :: std :: os :: raw :: c_int , regexp : :: std :: os :: raw :: c_int , everyByte : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_asm_bwdisassemble (core : * mut RCore , addr : u64 , n : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int) -> * mut RList ; } extern "C" { pub fn r_core_asm_back_disassemble_instr (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int , hit_count : u32 , extra_padding : u32) -> * mut RList ; } extern "C" { pub fn r_core_asm_back_disassemble_byte (core : * mut RCore , addr : u64 , len : :: std :: os :: raw :: c_int , hit_count : u32 , extra_padding : u32) -> * mut RList ; } extern "C" { pub fn r_core_asm_bwdis_len (core : * mut RCore , len : * mut :: std :: os :: raw :: c_int , start_addr : * mut u64 , l : u32) -> u32 ; } pub const r_pdu_condition_t_pdu_instruction : r_pdu_condition_t = 0 ; pub const r_pdu_condition_t_pdu_opcode : r_pdu_condition_t = 1 ; pub type r_pdu_condition_t = :: std :: os :: raw :: c_uint ; extern "C" { pub fn r_core_print_disasm (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int , pdu_condition_type : r_pdu_condition_t , pdu_condition : * const :: std :: os :: raw :: c_void , count_bytes : bool , json : bool , pj : * mut PJ , pdf : * mut RAnalFunction) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_json (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , lines : :: std :: os :: raw :: c_int , pj : * mut PJ) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_json_ipi (core : * mut RCore , addr : u64 , buf : * mut u8 , len : :: std :: os :: raw :: c_int , lines : :: std :: os :: raw :: c_int , pj : * mut PJ , pdu_condition : * const :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_instructions_with_buf (core : * mut RCore , address : u64 , buf : * mut u8 , nb_bytes : :: std :: os :: raw :: c_int , nb_opcodes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_instructions (core : * mut RCore , nb_bytes : :: std :: os :: raw :: c_int , nb_opcodes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_disasm_all (core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int , len : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pdi_with_buf (core : * mut RCore , address : u64 , buf : * mut u8 , nb_opcodes : u32 , nb_bytes : u32 , fmt : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pdi (core : * mut RCore , nb_opcodes : :: std :: os :: raw :: c_int , nb_bytes : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_disasm_pde (core : * mut RCore , nb_opcodes : :: std :: os :: raw :: c_int , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_print_fcn_disasm (p : * mut RPrint , core : * mut RCore , addr : u64 , l : :: std :: os :: raw :: c_int , invbreak : :: std :: os :: raw :: c_int , cbytes : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_get_prc_cols (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_flag_in_middle (core : * mut RCore , at : u64 , oplen : :: std :: os :: raw :: c_int , midflags : * mut :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_bb_starts_in_middle (core : * mut RCore , at : u64 , oplen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_esil_init (core : * mut RCore) -> bool ; } extern "C" { pub fn r_core_esil_fini (cesil : * mut RCoreEsil) ; } extern "C" { pub fn r_core_esil_load_arch (core : * mut RCore) ; } extern "C" { pub fn r_core_esil_unload_arch (core : * mut RCore) ; } extern "C" { pub fn r_core_esil_single_step (core : * mut RCore) ; } extern "C" { pub fn r_core_bin_raise (core : * mut RCore , bfid : u32) -> bool ; } extern "C" { pub fn r_core_bin_set_cur (core : * mut RCore , binfile : * mut RBinFile) -> bool ; } extern "C" { pub fn r_core_bin_set_env (r : * mut RCore , binfile : * mut RBinFile) -> bool ; } extern "C" { pub fn r_core_bin_set_by_fd (core : * mut RCore , bin_fd : u64) -> bool ; } extern "C" { pub fn r_core_bin_set_by_name (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_bin_load (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , baseaddr : u64) -> bool ; } extern "C" { pub fn r_core_bin_rebase (core : * mut RCore , baddr : u64) -> bool ; } extern "C" { pub fn r_core_bin_export_info (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_bin_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_bin_delete (core : * mut RCore , binfile_idx : u32) -> bool ; } extern "C" { pub fn r_core_bin_impaddr (bin : * mut RBin , va : :: std :: os :: raw :: c_int , name : * const :: std :: os :: raw :: c_char) -> u64 ; } extern "C" { pub fn r_core_pseudo_code (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_zdiff (c : * mut RCore , c2 : * mut RCore) -> bool ; } extern "C" { pub fn r_core_gdiff (core1 : * mut RCore , core2 : * mut RCore) -> bool ; } extern "C" { pub fn r_core_gdiff_fcn (c : * mut RCore , addr : u64 , addr2 : u64) -> bool ; } extern "C" { pub fn r_core_project_execute_cmds (core : * mut RCore , prjfile : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_project_open (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_project_cat (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_project_delete (core : * mut RCore , prjfile : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_project_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_project_save_script (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , opts : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_project_save (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_project_name (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_project_notes_file (core : * mut RCore , file : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_project_undirty (core : * mut RCore) ; } extern "C" { pub fn r_core_sysenv_begin (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_sysenv_end (core : * mut RCore , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_recover_vars (core : * mut RCore , fcn : * mut RAnalFunction , argonly : bool) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct r_core_bin_filter_t { pub addr : u64 , pub name : * const :: std :: os :: raw :: c_char , } # [test] fn bindgen_test_layout_r_core_bin_filter_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_core_bin_filter_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_core_bin_filter_t > () , 16usize , concat ! ("Size of: " , stringify ! (r_core_bin_filter_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_core_bin_filter_t > () , 8usize , concat ! ("Alignment of " , stringify ! (r_core_bin_filter_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . addr) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_core_bin_filter_t) , "::" , stringify ! (addr))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . name) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_core_bin_filter_t) , "::" , stringify ! (name))) ; } impl Default for r_core_bin_filter_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } pub type RCoreBinFilter = r_core_bin_filter_t ; extern "C" { pub fn r_core_bin_info (core : * mut RCore , action : :: std :: os :: raw :: c_int , pj : * mut PJ , mode : :: std :: os :: raw :: c_int , va : :: std :: os :: raw :: c_int , filter : * mut RCoreBinFilter , chksum : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_bin_set_arch_bits (r : * mut RCore , name : * const :: std :: os :: raw :: c_char , arch : * const :: std :: os :: raw :: c_char , bits : RSysBits) -> bool ; } extern "C" { pub fn r_core_bin_update_arch_bits (r : * mut RCore) -> bool ; } extern "C" { pub fn r_core_bin_attr_tostring (core : * mut RCore , flags : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_pdb_info (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , pj : * mut PJ , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_rtr_cmds (core : * mut RCore , port : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_rtr_cmds_query (core : * mut RCore , host : * const :: std :: os :: raw :: c_char , port : * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_rtr_help (core : * mut RCore) ; } extern "C" { pub fn r_core_rtr_pushout (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_list (core : * mut RCore , mode : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_rtr_add (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_remove (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_session (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_event (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_cmd (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_rtr_http (core : * mut RCore , launch : :: std :: os :: raw :: c_int , browse : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_rtr_http_stop (u : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_rtr_gdb (core : * mut RCore , launch : :: std :: os :: raw :: c_int , path : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_prevopsz (core : * mut RCore , addr : u64) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_config (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_mounts (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_matrix (core : * mut RCore) ; } extern "C" { pub fn r_core_visual_anal (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_debugtraces (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_visual_define (core : * mut RCore , arg : * const :: std :: os :: raw :: c_char , distance : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_visual_trackflags (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_graph (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_zigns (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_view_rop (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_comments (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_prompt (core : * mut RCore) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_visual_esil (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_search_preludes (core : * mut RCore , log : bool) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_search_prelude (core : * mut RCore , from : u64 , to : u64 , buf : * const u8 , blen : :: std :: os :: raw :: c_int , mask : * const u8 , mlen : :: std :: os :: raw :: c_int) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_get_boundaries_prot (core : * mut RCore , protection : :: std :: os :: raw :: c_int , mode : * const :: std :: os :: raw :: c_char , prefix : * const :: std :: os :: raw :: c_char) -> * mut RList ; } extern "C" { pub fn r_core_patch (core : * mut RCore , patch : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_patch_file (core : * mut RCore , patchfile : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_patch_unified (core : * mut RCore , patch : * const :: std :: os :: raw :: c_char , level : :: std :: os :: raw :: c_int , revert : bool) -> bool ; } extern "C" { pub fn r_core_hack (core : * mut RCore , op : * const :: std :: os :: raw :: c_char , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_dump (core : * mut RCore , file : * const :: std :: os :: raw :: c_char , addr : u64 , size : u64 , append : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_diff_show (core : * mut RCore , core2 : * mut RCore) ; } extern "C" { pub fn r_core_diff_show_json (core : * mut RCore , core2 : * mut RCore) ; } extern "C" { pub fn r_core_clippy (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmpwatch_free (w : * mut RCoreCmpWatcher) ; } extern "C" { pub fn r_core_cmpwatch_get (core : * mut RCore , addr : u64) -> * mut RCoreCmpWatcher ; } extern "C" { pub fn r_core_cmpwatch_add (core : * mut RCore , addr : u64 , size : :: std :: os :: raw :: c_int , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_cmpwatch_del (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_cmpwatch_update (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_cmpwatch_show (core : * mut RCore , addr : u64 , mode : :: std :: os :: raw :: c_int) -> bool ; } extern "C" { pub fn r_core_cmpwatch_revert (core : * mut RCore , addr : u64) -> bool ; } extern "C" { pub fn r_core_undo_new (offset : u64 , action : * const :: std :: os :: raw :: c_char , revert : * const :: std :: os :: raw :: c_char) -> * mut RCoreUndo ; } extern "C" { pub fn r_core_undo_print (core : * mut RCore , mode : :: std :: os :: raw :: c_int , cond : * mut RCoreUndoCondition) ; } extern "C" { pub fn r_core_undo_free (cu : * mut RCoreUndo) ; } extern "C" { pub fn r_core_undo_push (core : * mut RCore , cu : * mut RCoreUndo) ; } extern "C" { pub fn r_core_undo_pop (core : * mut RCore) ; } extern "C" { pub fn r_core_undo_up (core : * mut RCore) ; } extern "C" { pub fn r_core_undo_down (core : * mut RCore) ; } pub type RCoreLogCallback = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , count : :: std :: os :: raw :: c_int , message : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int > ; extern "C" { pub fn r_core_log_free (log : * mut RCoreLog) ; } extern "C" { pub fn r_core_log_view (core : * mut RCore , num : :: std :: os :: raw :: c_int , shift : :: std :: os :: raw :: c_int) ; } extern "C" { pub fn r_core_log_init (log : * mut RCoreLog) ; } extern "C" { pub fn r_core_log_get (core : * mut RCore , index : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_log_new () -> * mut RCoreLog ; } extern "C" { pub fn r_core_log_run (core : * mut RCore , buf : * const :: std :: os :: raw :: c_char , cb : RCoreLogCallback) -> bool ; } extern "C" { pub fn r_core_log_list (core : * mut RCore , n : :: std :: os :: raw :: c_int , count : :: std :: os :: raw :: c_int , fmt : :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_log_add (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_log_del (core : * mut RCore , n : :: std :: os :: raw :: c_int) ; } pub type PrintItemCallback = :: std :: option :: Option < unsafe extern "C" fn (user : * mut :: std :: os :: raw :: c_void , p : * mut :: std :: os :: raw :: c_void , selected : bool) -> * mut :: std :: os :: raw :: c_char > ; extern "C" { pub fn r_str_widget_list (user : * mut :: std :: os :: raw :: c_void , list : * mut RList , rows : :: std :: os :: raw :: c_int , cur : :: std :: os :: raw :: c_int , cb : PrintItemCallback) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_pj_new (core : * mut RCore) -> * mut PJ ; } extern "C" { pub fn r_core_table_new (core : * mut RCore , title : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } extern "C" { pub fn r_core_cmd_help (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_json (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_match (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_cmd_help_match_spec (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_contains (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_cmd_help_contains_spec (core : * const RCore , help : * const * const :: std :: os :: raw :: c_char , cmd : * const :: std :: os :: raw :: c_char , spec : :: std :: os :: raw :: c_char) ; } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct RCoreAnalStatsItem { pub youarehere : u32 , pub flags : u32 , pub comments : u32 , pub functions : u32 , pub blocks : u32 , pub in_functions : u32 , pub symbols : u32 , pub strings : u32 , pub perm : u32 , } # [test] fn bindgen_test_layout_RCoreAnalStatsItem () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreAnalStatsItem > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreAnalStatsItem > () , 36usize , concat ! ("Size of: " , stringify ! (RCoreAnalStatsItem))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreAnalStatsItem > () , 4usize , concat ! ("Alignment of " , stringify ! (RCoreAnalStatsItem))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . youarehere) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (youarehere))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . flags) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (flags))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . comments) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (comments))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . functions) as usize - ptr as usize } , 12usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (functions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . blocks) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (blocks))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . in_functions) as usize - ptr as usize } , 20usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (in_functions))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . symbols) as usize - ptr as usize } , 24usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (symbols))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . strings) as usize - ptr as usize } , 28usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (strings))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . perm) as usize - ptr as usize } , 32usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStatsItem) , "::" , stringify ! (perm))) ; } # [repr (C)] # [derive (Debug , Copy , Clone)] pub struct RCoreAnalStats { pub block : * mut RCoreAnalStatsItem , } # [test] fn bindgen_test_layout_RCoreAnalStats () { const UNINIT : :: std :: mem :: MaybeUninit < RCoreAnalStats > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < RCoreAnalStats > () , 8usize , concat ! ("Size of: " , stringify ! (RCoreAnalStats))) ; assert_eq ! (:: std :: mem :: align_of :: < RCoreAnalStats > () , 8usize , concat ! ("Alignment of " , stringify ! (RCoreAnalStats))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . block) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (RCoreAnalStats) , "::" , stringify ! (block))) ; } impl Default for RCoreAnalStats { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } extern "C" { pub fn r_core_anal_hasrefs (core : * mut RCore , value : u64 , mode : :: std :: os :: raw :: c_int) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_get_comments (core : * mut RCore , addr : u64) -> * mut :: std :: os :: raw :: c_char ; } extern "C" { pub fn r_core_anal_get_stats (a : * mut RCore , from : u64 , to : u64 , step : u64) -> * mut RCoreAnalStats ; } extern "C" { pub fn r_core_anal_stats_free (s : * mut RCoreAnalStats) ; } extern "C" { pub fn r_core_syscmd_ls (input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_syscmd_cat (file : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_syscmd_mkdir (dir : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_line_hist_offset_up (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_line_hist_offset_down (line : * mut RLine) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_print_list (core : * mut RCore , input : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_echo (core : * mut RCore , msg : * const :: std :: os :: raw :: c_char) ; } extern "C" { pub fn r_core_table (core : * mut RCore , name : * const :: std :: os :: raw :: c_char) -> * mut RTable ; } pub type inRangeCb = :: std :: option :: Option < unsafe extern "C" fn (core : * mut RCore , from : u64 , to : u64 , vsize : :: std :: os :: raw :: c_int , cb_user : * mut :: std :: os :: raw :: c_void) > ; extern "C" { pub fn r_core_search_value_in_range (core : * mut RCore , relative : bool , search_itv : RInterval , vmin : u64 , vmax : u64 , vsize : :: std :: os :: raw :: c_int , cb : inRangeCb , cb_user : * mut :: std :: os :: raw :: c_void) -> :: std :: os :: raw :: c_int ; } extern "C" { pub fn r_core_autocomplete_add (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char , type_ : :: std :: os :: raw :: c_int , lock : bool) -> * mut RCoreAutocomplete ; } extern "C" { pub fn r_core_autocomplete_free (obj : * mut RCoreAutocomplete) ; } extern "C" { pub fn r_core_autocomplete_reload (core : * mut RCore) ; } extern "C" { pub fn r_core_autocomplete_find (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char , exact : bool) -> * mut RCoreAutocomplete ; } extern "C" { pub fn r_core_autocomplete_remove (parent : * mut RCoreAutocomplete , cmd : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_anal_propagate_noreturn (core : * mut RCore , addr : u64) ; } extern "C" { pub fn r_core_plugin_init (cmd : * mut RCmd) -> bool ; } extern "C" { pub fn r_core_plugin_add (cmd : * mut RCmd , plugin : * mut RCorePlugin) -> bool ; } extern "C" { pub fn r_core_plugin_remove (cmd : * mut RCmd , plugin : * mut RCorePlugin) -> bool ; } extern "C" { pub fn r_core_plugin_check (cmd : * mut RCmd , a0 : * const :: std :: os :: raw :: c_char) -> bool ; } extern "C" { pub fn r_core_plugin_fini (cmd : * mut RCmd) ; } 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 () { const UNINIT : :: std :: mem :: MaybeUninit < __va_list_tag > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; 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 :: addr_of ! ((* ptr) . gp_offset) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (gp_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . fp_offset) as usize - ptr as usize } , 4usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (fp_offset))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . overflow_arg_area) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (overflow_arg_area))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . reg_save_area) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (__va_list_tag) , "::" , stringify ! (reg_save_area))) ; } impl Default for __va_list_tag { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct re_guts { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecREventHook_t { pub _start : * mut REventHook , pub _end : * mut REventHook , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecREventHook_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecREventHook_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecREventHook_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecREventHook_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecREventHook_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecREventHook_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecREventHook_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecREventHook_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecListInfo_t { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecStringSlice_t { pub _start : * mut RStringSlice , pub _end : * mut RStringSlice , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecStringSlice_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecStringSlice_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecStringSlice_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecStringSlice_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecStringSlice_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecStringSlice_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecStringSlice_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecStringSlice_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecFdPairs_t { pub _start : * mut RConsFdPair , pub _end : * mut RConsFdPair , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecFdPairs_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecFdPairs_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecFdPairs_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecFdPairs_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecFdPairs_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecFdPairs_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecFdPairs_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecFdPairs_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct layer_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct ptrace_wrap_instance_t { pub _address : u8 , } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinImport_t { pub _start : * mut RBinImport , pub _end : * mut RBinImport , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinImport_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinImport_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinImport_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinImport_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinImport_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinImport_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinImport_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinImport_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinSymbol_t { pub _start : * mut RBinSymbol , pub _end : * mut RBinSymbol , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinSymbol_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinSymbol_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinSymbol_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinSymbol_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinSymbol_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinSymbol_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSymbol_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinSymbol_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinSection_t { pub _start : * mut RBinSection , pub _end : * mut RBinSection , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinSection_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinSection_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinSection_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinSection_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinSection_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinSection_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinSection_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinSection_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecRBinEntry_t { pub _start : * mut RBinSymbol , pub _end : * mut RBinSymbol , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecRBinEntry_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecRBinEntry_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecRBinEntry_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecRBinEntry_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecRBinEntry_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecRBinEntry_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecRBinEntry_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecRBinEntry_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecTraceOp_t { pub _start : * mut REsilTraceOp , pub _end : * mut REsilTraceOp , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecTraceOp_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecTraceOp_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecTraceOp_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecTraceOp_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecTraceOp_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecTraceOp_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecTraceOp_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecTraceOp_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecAccess_t { pub _start : * mut REsilTraceAccess , pub _end : * mut REsilTraceAccess , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecAccess_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecAccess_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecAccess_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecAccess_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecAccess_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecAccess_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecAccess_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecAccess_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [repr (align (16))] # [derive (Debug , Copy , Clone)] pub struct r_vec_RVecBacktrace_t { pub _start : * mut u64 , pub _end : * mut u64 , pub _capacity : usize , } # [test] fn bindgen_test_layout_r_vec_RVecBacktrace_t () { const UNINIT : :: std :: mem :: MaybeUninit < r_vec_RVecBacktrace_t > = :: std :: mem :: MaybeUninit :: uninit () ; let ptr = UNINIT . as_ptr () ; assert_eq ! (:: std :: mem :: size_of :: < r_vec_RVecBacktrace_t > () , 32usize , concat ! ("Size of: " , stringify ! (r_vec_RVecBacktrace_t))) ; assert_eq ! (:: std :: mem :: align_of :: < r_vec_RVecBacktrace_t > () , 16usize , concat ! ("Alignment of " , stringify ! (r_vec_RVecBacktrace_t))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _start) as usize - ptr as usize } , 0usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_start))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _end) as usize - ptr as usize } , 8usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_end))) ; assert_eq ! (unsafe { :: std :: ptr :: addr_of ! ((* ptr) . _capacity) as usize - ptr as usize } , 16usize , concat ! ("Offset of field: " , stringify ! (r_vec_RVecBacktrace_t) , "::" , stringify ! (_capacity))) ; } impl Default for r_vec_RVecBacktrace_t { fn default () -> Self { let mut s = :: std :: mem :: MaybeUninit :: < Self > :: uninit () ; unsafe { :: std :: ptr :: write_bytes (s . as_mut_ptr () , 0 , 1) ; s . assume_init () } } } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecDebugTracepoint_t { pub _address : u8 , } # [repr (C)] # [derive (Debug , Default , Copy , Clone)] pub struct r_vec_RVecDebugPluginSession_t { pub _address : u8 , }
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary transmute
[INFO] [stdout]  --> /opt/rustwide/target/release/build/r2api-6fc4daf31c9295c9/out/bindings.rs:3:32342
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...: os :: raw :: c_int) { unsafe { let val : u32 = :: std :: mem :: transmute (val) ; self . _bitfield_1 . set (0usize , 24u8 , val ...
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace this with
[INFO] [stdout]   |
[WARN] too much data in the log, truncating it
